java - Java 的 SCons;是否有 env.Program() 的类似物?

标签 java scons

我需要创建一个可执行文件,运行它将为我的类调用 # java

我正在使用 SCons 编译我的 java 项目:

libFiles = "lib/myLibs.jar"

# Build the environment
env = Environment(JAVACLASSPATH = libFiles, JAVASOURCEPATH = '.')
env.Java(target = 'classes', source = 'src')

所有类都存储在文件夹classes/中,所有源文件都在/src中。要运行该程序,我必须

# cd classes/
# java -cp . myProg

有没有办法让SCons在根目录中创建一个可执行文件,以便它可以自己调用java?我查看了一个使用 env.Program() 的现有项目,但这仅适用于 C++。

谢谢!

最佳答案

您可以使用 Jar build 者。下面的 SCons 示例可以满足您的需求。

jar = java_env = Jar(target='Observer',
                     source=['Observer.java',
                             'Manifest.txt'])

请注意,如果您希望 Manifest.txt 文件正常工作,它必须具有以下第一行:

Manifest-Version: 1.0

您应该只使用 Java如果您想生成 .class 文件,请使用构建器。

关于java - Java 的 SCons;是否有 env.Program() 的类似物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3568597/

相关文章:

java - 如何使用 Java 8 流?

python - 重用来自不同项目的 SConstruct 的环境

build - 将 Visual Studio 解决方案文件移植到 scons 的最佳实践

mongodb - 卡在 Mavericks OSX 10.9 brew install 上安装 MongoDB 在 scons 线上挂起

compilation -/usr/bin/ld : cannot find -latlas

java - Spring-Data-Redis 与 Jedis putIfAbsent 用于分布式锁 - 不正确的行为

java - 为什么 IntelliJ 要我构造一个空的构造函数?

java - Akka 远程 actor 服务器发现

java - 无法使用 C# 重写 PDFTextStripper.writeString(String text, List<TextPosition> textPositions) 方法?

build - 如何在 SCons 中构建目标之前和之后显示消息