难度在Windows 7上通过python执行.jar文件

时间:2014-11-19 00:01:45

标签: python windows-7 subprocess executable-jar

我很难让python通过Windows 7命令行执行.jar文件。我的代码如下:

import subprocess
subprocess.call(['java', '-jar', 'file.jar'], shell = True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

当我运行此代码时,没有任何反应。我尝试过执行

java -jar file.jar

直接进入命令提示符,.jar应用程序打开并正常运行。

我也尝试用Popen替换它

subprocess.Popen(['java', '-jar', 'file.jar'], shell = True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

并尝试过其他方式

subprocess.call(['cmd','\C type java -jar file.jar'], shell = True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

import os
os.system('java -jar file.jar')

所有这些都没有做任何事情。

我尝试运行另一个命令行

import subprocess
subprocess.call(['ipconfig'])

这很好用。另外,

subprocess.call(['java -jar file.jar'])
当我在我的Mac上运行时,

工作正常。

知道问题可能是什么?我非常感谢任何建议。

1 个答案:

答案 0 :(得分:0)

这里有两个选项:

  • 指定包含main()方法的类名称
  

java -jar JarFile.jar com.something.TheClass

  • 将MANIFEST.MF文件添加到具有包含main()方法的类名称的jar中。
Manifest-version: 1.0
Main-Class: com.something.TheClass