我有一组不兼容 JAXB 但兼容 XMLBeans 的模式。
根据 XMLBeans 上的文档,我可以使用它scomp
来编译我的模式。但是我在任何地方都找不到这个工具,也找不到关于它的版本的文档。
我可以使用 maven 插件来编译我的模式,但它依赖于旧版本的 XMLBean(2.4 而不是 2.6)。
有谁知道通过使用 2.4 而不是 2.6 编译我的架构以及是否可以使用具有 2.6 依赖项的编译类(它是否向后兼容 - 似乎是?)
我的问题是 scomp 实用程序在哪里?
我有一组不兼容 JAXB 但兼容 XMLBeans 的模式。
根据 XMLBeans 上的文档,我可以使用它scomp
来编译我的模式。但是我在任何地方都找不到这个工具,也找不到关于它的版本的文档。
我可以使用 maven 插件来编译我的模式,但它依赖于旧版本的 XMLBean(2.4 而不是 2.6)。
有谁知道通过使用 2.4 而不是 2.6 编译我的架构以及是否可以使用具有 2.6 依赖项的编译类(它是否向后兼容 - 似乎是?)
我的问题是 scomp 实用程序在哪里?
我创建了这个 BATCH 来自动化这个过程。希望能帮助到你!
(在 XMLBeans 2.6 中你只需要 xbean.jar)
@echo off
echo ***
echo * https://xmlbeans.apache.org/docs/2.0.0/guide/tools.html
echo ***
setlocal
SET SOURCE=
if exist %1.xsd SET SOURCE=%1.xsd
if exist %1.wsdl SET SOURCE=%1.wsdl
if not "%SOURCE%"=="" goto JAVA
echo USAGE: COMP XSD/WSDL FILENAME
goto END
:JAVA
if exist "%JAVA_HOME%\bin\javac.exe" goto XMLBEANS
echo JAVA SDK NOT FOUND! PLEASE configure JAVA_HOME
echo %JAVA_HOME%
goto END
:XMLBEANS
SET BEANS_HOME=.
SET BEANS_SRC=%BEANS_HOME%\src
SET BEANS_JAR=%BEANS_HOME%\jars
SET BEANS_LIB=%BEANS_HOME%\lib-2.6
SET BEANS_CP=%BEANS_LIB%\xbean.jar
echo JAVA HOME @ %JAVA_HOME%
echo BEANS HOME @ %BEANS_HOME%
echo BEANS SRC @ %BEANS_SRC%
echo BEANS JAR @ %BEANS_JAR%
echo BEANS LIB @ %BEANS_LIB%
echo BEANS CP @ %BEANS_CP%
if exist %BEANS_LIB% goto COMPILE
echo XMLBEANS LIB NOT FOUND @ %BEANS_LIB%
goto END
:COMPILE
SET JAVA=%JAVA_HOME%\bin\java.exe
SET JAVAC=%JAVA_HOME%\bin\javac.exe
echo ***COMPILING*** %SOURCE%
if not exist %1.xsdconfig goto WITHOUT_CONFIG
"%JAVA%" -classpath %BEANS_CP% org.apache.xmlbeans.impl.tool.SchemaCompiler -src %BEANS_SRC% -out %BEANS_JAR%\%1.jar %SOURCE% %1.xsdconfig -compiler "%JAVAC%" -javasource "1.5"
goto END
:WITHOUT_CONFIG
echo %1.xsdconfig NOT FOUND! Compiling without xsdconfig
"%JAVA%" -classpath %BEANS_CP% org.apache.xmlbeans.impl.tool.SchemaCompiler -src %BEANS_SRC% -out %BEANS_JAR%\%1.jar %SOURCE% -compiler "%JAVAC%" -javasource "1.5"
:END