我正在尝试使用ant的xjc编译器。构建成功但没有生成任何内容。 我的蚂蚁脚本如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="AutomateWithAnt" basedir=".">
<property file="build.properties"/>
<path id="compile.classpath">
<fileset dir="${lib.includes}" includes="*.jar"></fileset>
</path>
<target name="init" description="create java class">
</target>
<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask" classpathref="compile.classpath"/>
<!-- Generates the source code from the test.xsd schema using jaxb -->
<target name="option-generate" description="Generates the source code" depends="init">
<xjc schema="test.xsd" destdir="${generated-src.dir}" package="${generated-src.dir}">
<arg value="-Xcommons-lang" />
<arg value="-Xcommons-lang:ToStringStyle=SHORT_PREFIX_STYLE" />
<produces dir="${generated-src.dir}" includes="**/*.java" />
</xjc>
</target>
</project>
我的build.properties是:
lib.includes=lib/
generated-src.dir=/
我使用的是java 1.6,我使用过jaxb-sjc.jar。
答案 0 :(得分:4)
您已定义了2个Ant目标(init
和option-generate
),但除非您指定要运行哪个目标,否则不会调用它们。
您需要在命令行中指定它,例如
ant option-generate
或向<project>
元素添加默认目标,例如
<project name="AutomateWithAnt" basedir="." default="option-generate">
顺便提一下,您的init
目标是空的,因此毫无意义。