如何使用ANT工具编译xsd文件

如何使用ANT工具编译xsd文件,xsd,Xsd,我有一个xsd文件列表要作为java对象生成,但我尝试使用maven构建工具,它运行良好。我使用了pom.xml中的插件。我尝试使用ANT构建工具,但它不起作用。我尝试使用谷歌的以下链接,但它不起作用。 在我的项目中,我们使用ANT工具。所以请任何人帮助我解决这个问题 要编译xsd文件,必须首先创建schemas.java文件。为此,您需要添加taskdef,它包含在您提供的链接中。然后必须使用ant xjc任务。以下是一个例子: <xjc schema="your.xsd.fi

我有一个xsd文件列表要作为java对象生成,但我尝试使用maven构建工具,它运行良好。我使用了pom.xml中的插件。我尝试使用ANT构建工具,但它不起作用。我尝试使用谷歌的以下链接,但它不起作用。
在我的项目中,我们使用ANT工具。所以请任何人帮助我解决这个问题

要编译xsd文件,必须首先创建schemas.java文件。为此,您需要添加taskdef,它包含在您提供的链接中。然后必须使用ant xjc任务。以下是一个例子:

<xjc schema="your.xsd.file" target="place.to.put.java.file" package="package.for.the.file.eg.com.soft.anonymous"/>
现在,您已经将从xsd模式创建的.java文件bgm.ser和jaxb.properties放置在目标目录中。要编译它们,只需使用antjavac任务。 我希望这对你有帮助。如果没有,请在您尝试编译时详细说明问题所在

1.
您可以在许多地方放置taskdef,但最好的位置是在您的xjc任务之前。例如,您有一个名为xjc.target的目标。在这个目标中放入taskdef,然后放入xjc任务,然后放入javac

让我解释一下:

确保在taskdef中正确设置了fileset dir。它必须是放置jaxb.jar文件的目录。例如项目/图书馆。 taskdef之后,使用xjc任务。在src中,给出xsd文件的路径。在目标中,编写一个要放置java文件的路径。例如src/java/files。在package中,您放置了类的包。例如,如果您放置pl.com.website,您的类将转到src/java/pl/com/website。 现在,您有了java文件。要使用它们,必须使用javac任务编译它们。所以您将这些java文件放在src路径中。在目标中,您将要编译它们的路径放在创建.class文件的位置。就这些。 请一步一步地尝试,如果您有问题,请为我复制粘贴控制台输出。这会帮助我更好地理解你的问题

<target name="xjc.target">
    <taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask">
        <classpath>
            <fileset dir="path/to/jaxb/lib" includes="*.jar" />
        </classpath>
    </taskdef>

    <xjc schema="your.xsd.file" target="${java.files.dir}" package="package.for.the.file.eg.com.soft.anonymous"/>

    <javac src="${java.files.dir}" target="${classes}"/>
</target>

你好谢谢你们的支持。根据那个链接,我把taskdef放在build.xml中。我在我的项目中得到了一些包级代码的EROR,因为找不到bcoz java对象。我使用maven为所有东西编码,所以现在正试图转换为ANT项目结构。下一步我必须放置ANT xjc任务。然后如何只编译xsd来生成java对象。您可以将taskdef放置在许多位置,但最好的位置是在xjc任务之前。例如,您有一个名为xjc.target的目标。在这个目标中放入taskdef,然后放入xjc任务,然后放入javac。检查我的答案编辑1,我在build.xml文件中使用过类似的方法。当我试图在cmd提示符下使用ANTits进行编译时,抛出错误,下面的行是Ok,但这个错误说明了什么?你能把它复制并粘贴到这里吗?你好!!!它说构建失败,因为src不是有效的版本号。也许你是指通过ant构建我的应用程序时的@destdir