从项目名称中创建Ant类路径
在ant构建脚本中,我有一个我们依赖的项目列表。我需要创建一个用于编译的类路径 我有:从项目名称中创建Ant类路径,ant,classpath,Ant,Classpath,在ant构建脚本中,我有一个我们依赖的项目列表。我需要创建一个用于编译的类路径 我有: included.projects=ProjectA, ProjectB 我需要: included.project.classpath=../ProjectA/bin, ../ProjectB/bin 当前代码: <echo message="${included.projects}" /> <pathconvert property="included.projects.class
included.projects=ProjectA, ProjectB
我需要:
included.project.classpath=../ProjectA/bin, ../ProjectB/bin
当前代码:
<echo message="${included.projects}" />
<pathconvert property="included.projects.classpath" dirsep="," >
<map from="" to="../"/>
<path location="${included.projects}"/>
</pathconvert>
<echo message="${included.projects.classpath}" />
<javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="false" source="1.6">
<classpath>
<pathelement path="${classpath}" />
<dirset includes="${included.projects.classpath}" />
</classpath>
</javac>
我也尝试过显式声明,但没有成功:
<path id="modules.classpath">
<fileset dir="../ModuleA/bin" />
<fileset dir="../ModuleB/bin"/>
</path>
<path id="libraries.classpath">
<fileset dir="lib" includes="*.jar"/>
</path>
<javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="false" source="1.6">
<classpath refid="libraries.classpath" />
<classpath refid="modules.classpath" />
</javac>
我很好奇,显式声明代码有什么问题,是否可以用逗号分隔的字符串到类路径解决方案来解决 我认为在构建顶部明确声明类路径会更简单,如下所示:
<path id="compile.path">
<fileset dir="../ProjectA/bin" includes="*.jar"/>
<fileset dir="../ProjectB/bin" includes="*.jar"/>
</path>
<javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="false" source="1.6">
<classpath>
<path refid="compile.path"/>
<pathelement path="${classpath}" />
</classpath>
</javac>
用法如下:
<path id="compile.path">
<fileset dir="../ProjectA/bin" includes="*.jar"/>
<fileset dir="../ProjectB/bin" includes="*.jar"/>
</path>
<javac srcdir="${src.dir}" destdir="${build.dir}" includeantruntime="false" source="1.6">
<classpath>
<path refid="compile.path"/>
<pathelement path="${classpath}" />
</classpath>
</javac>
注:
- 我再次阅读了你的问题,才意识到你没有使用其他项目构建的jar文件,是吗。。。。不是个好主意
…