XMLBeans模式编译 - scomp实用程序

时间:2015-10-29 08:40:53

标签: java xmlbeans xmlbeans-maven-plugin

我有一组不兼容JAXB但与XMLBeans兼容的模式。

根据XMLBeans的文档,我可以使用scomp来编译我的模式。但我无法在任何地方找到此工具或在其版本上找到文档。

我可以使用maven插件来编译我的架构,但它依赖于旧版本的XMLBean(2.4而不是2.6)。

有没有人通过使用2.4而不是2.6来编译我的模式,并且如果我可以使用具有2.6依赖性的编译类(它是向后兼容的 - 它似乎是?)知道我错过了什么功能/ bug。 )

我的问题是scomp实用程序在哪里?

1 个答案:

答案 0 :(得分:0)

我创建了这个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