2012-10-06 83 views
1

我有一個要求,我的前端屏幕在運行時創建一個XSD。在運行時從XSD創建Java Class

之後我需要創建Java Classes,然後將其壓縮成一個war文件。 所有這些都需要在運行時和JVM內完成。

我已經研究了這一點,並發現XJCXJC -p富myschema.xsd)工具命令。不幸的是,似乎該工具不能從我的Java應用程序內運行。

有一個Process API來從Java運行該工具,但我認爲它會使它依賴於操作系統。

請幫幫我。

我需要在運行時從XSD生成Java源代碼或直接二進制文件(類文件),並將其打包到EAR中。

回答

1

你肯定可以從你的Java程序運行該工具,就像任何其他應用程序可以這樣調用。

你甚至可以提供當前工作目錄executing the Process

只要你不做任何操作系統依賴,那麼你將不會讓你的應用程序操作系統依賴。這在提供路徑時尤其重要。如果它們是相對的,則使用Linux樣式路徑(並避免路徑中的空間)保持安全。

一旦你這樣做了,你可以將*.java*.class文件分組,並使用普通的Java工具對其進行分組。從那裏,您可以使用一些API將EAR加載到Java EE環境中。

+0

我檢查了文檔。看來這可能只是工作。我會檢查並告訴它是否正確。 –

+0

所以這意味着我可以在運行時運行jar工具。 –

+0

只要JDK安裝在目標計算機上和環境路徑上(或位於其他位置)。 – pickypg