我要求我的前端屏幕在运行时创建XSD。
之后我需要为它创建Java类,然后将其压缩到war文件中。 所有这些都需要在运行时和JVM中完成。
我对此进行了研究,发现 xjc ( xjc -p foo myschema.xsd )工具命令。不幸的是,似乎无法从我的java应用程序内部运行该工具。
有一个Process API可以从Java运行该工具,但我认为它会使它依赖于操作系统。
请帮帮我。
我需要在运行时从XSD生成Java源代码或直接二进制文件(Class Files),并将其打包到EAR。
答案 0 :(得分:1)
您绝对可以从Java程序运行该工具,就像任何其他应用程序都可以这样调用一样。
您甚至可以在exec
uting the Process
时提供当前的工作目录。
只要您不依赖操作系统,那么您就不会依赖于应用程序操作系统。这在提供路径时尤其重要。如果它们是相对的,那么使用Linux样式路径(并避免路径中的空格)以保持安全。
完成此操作后,您可以对*.java
和*.class
文件进行分组,并使用常规Java工具对其进行包装。从那里,您可以使用一些API将EAR加载到Java EE环境中。