Java Ant:需要在目标中设置新属性以供以后使用
ant脚本的相关部分:Java Ant:需要在目标中设置新属性以供以后使用,java,ant,Java,Ant,ant脚本的相关部分: <target name="checkOS"> <condition property="isWindows" value="true"> <os family="windows" /> </condition> <condition property="isUnix" value="true"> <os family="unix" />
<target name="checkOS">
<condition property="isWindows" value="true">
<os family="windows" />
</condition>
<condition property="isUnix" value="true">
<os family="unix" />
</condition>
</target>
<target name="setProps" depends="checkOS">
<condition property="my.dir" value="${my.dir.win}">
<not>
<isset property="isUnix" />
</not>
</condition>
<condition property="my.dir" value="${my.dir.unix}">
<not>
<isset property="isWindows" />
</not>
</condition>
</target>
<path id="classpath.test">
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${my.dir}/project/lib">
<include name="project.jar"/>
</fileset>
<fileset dir="${my.dir}/project/samples">
<include name="samples.jar"/>
</fileset>
<pathelement path="${build.dir}"/>
</path>
<target name="compile" depends="setProps">
...
</target>
...
问题是,找不到${my.dir}属性。我想在同一个ant脚本中引用Linux或Windows文件夹路径,以便在任何一个系统上使用。正在寻找如何编写相关部分以实现我的目标的指导?包含库的相对目录是否更简单?例如“lib”目录?这将是跨平台的。另一种选择是使用ApacheIvy管理所有类路径依赖项。一旦理解,后面的选项将具体化所有特定于平台的问题,并允许您利用Maven存储库,如Maven Central。包含库的相对目录是否更简单?例如“lib”目录?这将是跨平台的。另一种选择是使用ApacheIvy管理所有类路径依赖项。一旦理解了,后面的选项将外部化所有特定于平台的问题,并允许您利用Maven存储库,如Maven Central