我想通过 python 使用 subprocess.Popen()
执行 java 主类 main.java
。 main.java
接受 3 个参数。
我想知道怎么做?例如我有一个 HelloWorld.java
类:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!" + args[0]);
} }
我尝试使用以下命令在 python 中调用它:
print (subprocess.Popen('java C:/Users/testing/Hello.Main sayHello', shell=True, stdout=subprocess.PIPE).stdout.read())
其中 'sayHello' 是我要传入的字符串参数。它说
错误:无法找到或加载主类 C:.Users.testing.Hello.Main
谢谢
最佳答案
您可以按以下方式运行扩展名为 .class
的 java 文件:
java your.path.Main arg1 arg2
在哪里,
java
- 运行 Java 解释器的命令your.path.Main
- 你的类的全名(没有.class
)arg1 arg2
- 参数(由空格或"
之间书写)
此外,当您格式化此行时,它会在 subprocess.Popen()
中作为参数传输。
subprocess.Popen('java your.path.Main arg1 arg2')
我不是 Python 程序员,因为我建议你阅读 documentation about this method .
关于java - 在 python 中使用 subprocess.Popen 运行 java 主类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31464354/