public class Bar {
public static void main (String[] args) {
String pythonPath = this.getClass().getResource("data/__hello__.py").getPath();
String command = new StringBuilder()
.append("python ").append(pythonPath)
.append(" -v ").append("201309")
.toString();
CmdLineUtil.runFromCommandLine(command);
}
}
当我在没有 JAR 文件的情况下运行 Bar 时,它工作正常。我最终执行的命令是
python ~/projectDirectory/com/__hello.py -v 201309
但是,当我从我的项目创建一个 jar 文件时:test.jar
$jar tf test.jar
com/__hello__.py
com/Bar.java
并尝试执行它:
java -classpath test.jar com.Bar
我收到这个错误
ERROR - "python: can't open file 'file: ~/projectDirectory/test.jar!/com/__hello__.py': [Errno 2] No such file or directory\n"
有谁知道我该如何解决这个问题?我是否必须从 jar 中解压缩文件并使命令指向解压缩的文件?如果可能的话,我想避免这样做。