【问题标题】:How to reference Eclipse jar variable from ant build.xml?如何从 ant build.xml 引用 Eclipse jar 变量?
【发布时间】:2012-10-13 21:42:30
【问题描述】:

我有一个依赖于外部 jar 的项目的 ant 构建脚本。外部 jar 的位置在 Eclipse 中作为变量可用(例如,JJ2000_LIB,通过项目属性 > Java 构建路径 > 库中的“添加变量”添加)。 如何从 ant 访问此类 Eclipse 库变量?

理想情况下,我还希望能够从命令行运行相同的 ant 脚本并能够设置此变量。

我已经尝试过env.JJ2000_LIB,它可以在命令行中运行(如果我设置了环境变量),但不能在 Eclipse 中运行。我的build.xml 包含:

<property environment="env" />
<property name="jj2000_lib" value="${env.JJ2000_LIB}" />

<target>
    <javac srcdir="${src}" classpath="${jj2000_lib}" destdir="${build}" />
</target>

【问题讨论】:

    标签: eclipse ant environment-variables


    【解决方案1】:

    基本上,如果您想将 jar 添加到您的项目中,您需要:用鼠标右键单击“添加到构建路径”(几乎与您所做的相同)。

    然后在构建中你必须放这样的东西:

    <property name="External" value="youJar.jar" />
    <jar destfile="${jar.completePath}" manifest="${basedir}/manifest">
    <fileset dir="${path}/classes" excludes="**/*.bak" />
    <zipfileset src="${path}/${Eternal}" />
    </jar>
    

    显然你需要设置正确的路径。它对我有用。

    编辑:在清单中你应该这样写一行: 类路径:youJar.jar

    编辑:

    classhpath 变量(您定义的那个)似乎与 ant 不兼容,并且可以在 ant 中使用(我在 eclipse 开发者论坛中发现了一些错误帖子,但没有人修复)。所以似乎没有办法使用类路径变量。我尝试了几个小时来为您找到解决方案,现在我能为您做的最好的事情就是链接此站点:

    http://www.ant4eclipse.org

    也许这就是解决方案。

    【讨论】:

    • 但我不想硬编码我的 jar 文件的路径。我已经有这样一个&lt;property /&gt;,除了我使用的是value="${env.VARIABLE_NAME}",就像我说的那样,如果我从命令行调用ant,它就可以工作,但我希望它适用于“添加变量”构建路径Eclipse 中可用的组件。
    • 在这种情况下,您可以创建一个小类,将 var 写入文件、编译、运行它,然后读取 var 编译 e 写入 jar。如果这是您需要的,我将编辑我的答案。
    • 让我先澄清一下我的问题。
    猜你喜欢
    • 1970-01-01
    • 2016-03-13
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    • 2013-10-24
    • 1970-01-01
    • 1970-01-01
    • 2014-10-01
    相关资源
    最近更新 更多