如何使用Ant将整个lib目录(包括所有子目录)放在类路径上?

用户4903:

我不确定这是问题所在,但看起来可能是这种情况。我遇到构建错误,告诉我某些软件包不存在。这些软件包是存在于我的lib目录中的.jar文件中的软件包。我正在编译并复制到classes目录中的java源文件中的任何其他软件包都可以正常工作。以下是与该问题有关的Ant构建脚本的一些基础知识:

<property name="app.name" value="myapp" />
<property name="base.dir" value="${basedir}" />
<property name="build.dir" value="${base.dir}/build" />
<property name="build.webinf.dir" value="${build.dir}/WEB-INF" />
<property name="build.classes.dir" value="${build.webinf.dir}/classes" />
<property name="build.lib.dir" value="${build.webinf.dir}/lib" />
<property name="catalina.dir" value="C:\Program Files\Apache Software Foundation\apache-tomcat-5.5.28" />
<property name="catalina.lib.dir" value="${catalina.dir}/shared/lib" />
<property name="config.dir" value="${base.dir}/config" />
<property name="dist.dir" value="${basedir}/dist"/>
<property name="lib.dir" value="${base.dir}/lib" />
<property name="src.dir" value="${base.dir}/src" />
<property name="www.dir" value="${base.dir}/www" />

<path id="compile.classpath">
    <fileset dir="${lib.dir}">
        <include name="*.jar" />
    </fileset>
    <pathelement location="${catalina.dir}/common/classes" />
    <fileset dir="${catalina.dir}/common/endorsed">
        <include name="*.jar" />
    </fileset>
    <fileset dir="${catalina.dir}/common/lib">
        <include name="*.jar" />
    </fileset>
    <pathelement location="${catalina.dir}/shared/classes"/>
    <fileset dir="${catalina.lib.dir}">
        <include name="*.jar" />
    </fileset>
</path>

<target name="init">
    <mkdir dir="${build.dir}" />
    <mkdir dir="${build.webinf.dir}" />
    <mkdir dir="${build.classes.dir}" />
    <mkdir dir="${build.lib.dir}" />
    <mkdir dir="${dist.dir}" />
    <mkdir dir="${src.dir}" />
</target>

<target name="prepare_www_dir" description="Copies all static web content onto the build path.">
    <copy todir="${build.dir}">
        <fileset dir="${www.dir}"/>
    </copy>
</target>

<target name="prepare_lib_dir" description="Copies all libraries onto the build lib path.">
    <copy todir="${build.lib.dir}">
        <fileset dir="${lib.dir}" includes="**/*.jar" />
    </copy>
</target>

<target name="compile" depends="init,prepare_www_dir,prepare_lib_dir" description="Compiles source code, and copies it onto the build class path.">
    <javac srcdir="${src.dir}" destdir="${build.classes.dir}">
        <classpath refid="compile.classpath" />
    </javac>
</target>
挑战者:
<fileset dir="${lib.dir}">
    <include name="**/*.jar" />
</fileset>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何列出所有子目录的目录大小?

如何使用wget下载整个目录和子目录?

如何使用通过FTP的骆驼路由将所有文件从目录(包括子目录)移动到特定目录,而目标中没有子目录?

如何使用Java 8探索所有子目录?

将所有URL(包括无路径)重定向到子目录中的文件

如何使用Ant包含/排除模式从Gradle zip任务中排除所有子目录?

我将如何使用find来收集所有目录的路径,而不是我想要的目录中任何子目录的路径

如何跨子目录包括所有.so库

不包含任何文件的所有子目录的路径

如何计算目录中存在的所有子目录?

使用tar创建存档,包括所有“ dotfiles”,但不包括所有子目录和/ wo目录结构

如何排除所有子目录,但在rsync中包括目录文件?

如何建立目录中所有文件的索引,包括子目录和ZIP文件的内容?

如何从目录中删除所有子目录?

从给定路径返回所有子目录的类型

如何将du(fx)应用于除某些子目录之外的所有子目录?

Shell脚本打印所有子目录的路径

如何删除Bash中的所有文件和子目录(包括边缘情况)

使用DOS Batch命令列出所有现有文件类型(包括子目录)

如何使用vim打开当前目录和所有子目录中的所有文件?

如何将所有文件(不包括子目录)从一个目录移动到另一个目录?

如何列出Zip存档中的所有* .doc文件,包括子目录中的文件?

如何将目录的所有子目录设置为$ PATH?

如何使用Shell脚本备份目录和文件,包括所有子目录和文件?

使用Dropbox Python API将目录上载到包括所有文件和子目录的Dropbox时出错

如何使用Audited监视所有目录(包括所有子目录)?

使用.htaccess将所有文件/目录重定向到子目录,但不包括主页

如何搜索/检测指定路径内的所有目录/子目录?

如何遍历目录及其所有子目录?