在运行目标之前将自定义 jar 添加到 ant 的类路径



我正在尝试在实际调用目标之前将更多自定义jar添加到ant的类路径中,但它没有采用我的自定义jar,因此我从ant的taskdef类找不到className时出错。有没有办法解决这个问题?

main.ksh
#/bin/ksh
.
.
ANT_CLASSPATH=$JDK_HOME/jre/lib/rt.jar
ANT_CLASSPATH=$ANT_CLASSPATH:$ANTBUILD_HOME/lib/ant-$ANT_VERSION.jar
.
.
echo $ANT_CLASSPATH
export ANT_CLASSPATH
.
.
# java call with framed ANT_CLASSPATH to ant target which is part of main build.xml ### This call, I don't want to run without my custom jar in ANT_CLASSPATH ###

我的新 ksh 文件如下所示,我正在向ANT_CLASSPATH添加新的自定义 jar

sub.ksh
#/bin/ksh

# Adding some more to jars to ANT_CLASSPATH
export ANT_CLASSPATH=../lib/custom/custom-3.0.jar

main.ksh new-build.xml $*

ANT 类路径最好在构建文件中进行管理:

<path id="runtime.path">
  <pathelement location="lib/custom/custom-3.0.jar"/>
  ..
  ..
</path>
<path id="build.path">
  <pathelement location="lib/custom-anttask-3.0.jar"/>
  ..
  ..
</path>
<!-- Use the paths using 'classpathref' attributes on tasks -->
<java .... classpathref="runtime.path"/>
<taskdef .... classpathref="build.path"/>

由于最初的想法是不要接触main.ksh脚本,所以没有仔细观察它。我的坏,如果它必须使用导出的值形式 sub.ksh,则必须更正。

我只需要在第一行附加导出的值:

ANT_CLASSPATH=$ANT_CLASSPATH:$JDK_HOME/jre/lib/rt.jar

相关内容

  • 没有找到相关文章

最新更新