【问题标题】:Scons missing builtin Builder for "Jar"Scons 缺少“Jar”的内置生成器
【发布时间】:2015-03-31 18:06:51
【问题描述】:

我正在使用 Scons(2.0.1;升级可能但可能很困难)的(公认老化的)版本,并且我在使用“Jar”构建器时遇到了问题。具体来说,它不可用,我不知道为什么。 “JavaClassFile”构建器可用且工作正常,但它无法构建我的 jar,并出现以下错误:

scons: 读取 SConscript 文件 ... AttributeError:“SConsEnvironment”对象没有属性“Jar”: 文件“/home/fred/comms/SConstruct”,第 183 行: envWithJava.Jar(target='util/myproject.jar', source=['util/myproject.class', 'util/jasypt.jar', 'util/bcprov-ext-jdk15on-152.jar', 'util/ Manifest.txt'])

相关的 SConstruct 摘录:

env.Jar(target='util/myproject.jar', source=['util/myproject.class', 'util/jasypt.jar', 'util/bcprov-ext-jdk15on-152.jar', 'util/Manifest.txt'])

env.Dump() 中的“BUILDERS:” 没有列出“Jar”,但有许多其他的,并且可以很好地构建 C、C++、Flex 和其他源。

我主要是在寻找一种方法来调试 Scons 内部发生的事情,以使其跳过构建器。 jar 命令与 javac 位于同一目录中,并且该构建器有效,因此它似乎与路径无关。具有 Jar 引用的 Python 文件存在于 Scons 使用的库中。

有什么想法吗?

【问题讨论】:

    标签: scons


    【解决方案1】:

    我的猜测是您要么没有安装“jar”可执行文件(你可以在命令行上调用它吗?),或者它位于尚未正确传播到您的环境的路径中。另请参阅http://scons.org/wiki/FrequentlyAskedQuestions 的“最常见的常见问题解答”中的 #1 和 http://scons.tigris.org/issues/show_bug.cgi?id=2730 的特定于 java 的错误报告。

    【讨论】:

    • Tigris 错误报告正是问题所在。你到底是怎么发现的?我的 Google-fu 让我失望了,但我通常很擅长。
    • 我敢打赌……当我修复上述错误时,我在 Jar 构建器的源代码中添加了一条注释,引用了问题单。看起来额外的工作得到了回报...... ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 2019-04-23
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    相关资源
    最近更新 更多