gpt4 book ai didi

java - 如何在 ant 构建过程中包含外部类文件

转载 作者:行者123 更新时间:2023-11-30 03:53:39 25 4
gpt4 key购买 nike

我有一个包(带有一些过时的Java文件),我需要使用ant工具构建它。我有一些更新的类(class),其来源不可用。因此,我需要在构建期间将更新的类添加到 jar 中,并从构建中跳过过时的 Java 文件。请让我知道如何实现这一目标。

例如 - 我没有 com.org.auth.ABC.Java 的更新源 java 文件,但我有从另一个源(即 com.org.auth.ABC.class)获得的更新类文件。在构建过程中,我需要单独指向此类的更新类(com.org.auth.ABC.class)并创建一个新的 jar。

请了解我当前如何指向下面的类文件。

<target name="xxx.jar" depends="xjc,compile">
<jar destfile="${dist.dir}/xxx.jar">
<fileset dir="${classes.dir}" includes="**/*.class"/>
<fileset dir="${jaxb-classes.dir}" includes="**/*.class"/>
<fileset dir="${jaxb-source.dir}" includes="**/bgm.ser,**/jaxb.properties"/>
</jar>
</target>

最佳答案

如果您想从编译中保留某些包,您可以使用文件集 ant 标记的 excepts 属性。

例如:

  <fileset dir="src/">
<exclude name="**/dir_name_to_exclude/**" />
</fileset>

为了在编译中包含指定的类,您可以使用 ant 将包含文件夹放入类路径中。

  <path id="project.class.path">  
<pathelement location="lib/"/>
<pathelement path="${java.class.path}/"/>
<pathelement path="path to your class file's base folder"/>
</path>

<javac srcdir="${src.dir}"
destdir="${classes.dir}"
classpathref="project.class.path">
... put source files here..
</javac>

如果您想在 jar 中包含该类文件,请使用 include 标记将其添加到文件集中:

  <fileset dir="classfiles">
<include name="your class file name"/>
</fileset>

希望这有帮助

关于java - 如何在 ant 构建过程中包含外部类文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23798392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com