2012-10-06 56 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