使用xjc与蚂蚁

时间:2012-01-28 04:59:11

标签: java jaxb xjc

我正在尝试使用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。

1 个答案:

答案 0 :(得分:4)

您已定义了2个Ant目标(initoption-generate),但除非您指定要运行哪个目标,否则不会调用它们。

您需要在命令行中指定它,例如

ant option-generate

或向<project>元素添加默认目标,例如

<project name="AutomateWithAnt" basedir="." default="option-generate">

顺便提一下,您的init目标是空的,因此毫无意义。