Skip to main content
 首页 » 编程设计

python之如何加载放置在不同位置的 jar 文件和支持文件

2025年05月04日15Free-Thinker

我正在创建一个运行 jar 文件的 python 程序。 jar 文件和一些支持文件放置在与 python 程序目录不同的位置。我尝试将 jar 文件路径添加到 sys.path 但它无法从那里访问文件,但是路径已正确添加到 sys.path。我怎样才能让它工作?

jar 文件位置:E:\data

python 文件位置:C:\Users\user\Desktop

我正在使用 subprocess 调用 jar 文件,代码如下:

import os 
import sys 
import subprocess as sp 
 
class abc(): 
    def __init__(self): 
        sys.path.append(r'E:\data') 
 
    def run(self): 
        print sys.path 
        env = dict(os.environ) 
        env['JAVA_OPTS'] = '-Xms256m -Xmx256m -Xss1024k' 
        sp.call(['java', '-jar', 'file.jar'], env=env) 
 
if __name__ == '__main__': 
    o = abc() 
    o.run() 

运行上面的代码后,我收到一条错误消息:

错误:无法访问 jarfile file.jar

请您参考如下方法:

如果你只是改变你的工作目录会怎么样:

import os 
cwd = os.getcwd() #current directory 
os.chdir('path/to/jar') 
... # run file 
... 
os.chdir(cwd)