我有2個安裝:一個在我的筆記本電腦和一個SLURM安裝。我想在我的python函數中設置相對路徑,所以我可以通過git拉動並運行它。設置子進程的相對java類路徑
問題:我的jar文件在我的筆記本電腦
/Users/me/libs/jena/lib/*
或~/libs/jena/lib/*
和/home/user/me/libs/jena/lib/*
或~/libs/jena/lib/*
在服務器上。
我知道並試圖os.path.join(os.path.dirname(__file__),'../../libs/jena/lib/*')
,也直接設置~/path/
不起作用。
令我百思不解的是運行腳本認領用os.path.join
工作正常,但設置類路徑,如:
cmd = ["java", "-cp", os.path.join(os.path.dirname(__file__),'../../libs/jena/lib/*')"+":.", java_file, args]
proc = Popen(cmd, stdout=PIPE, stderr=PIPE)
不起作用。
感謝您的幫助
'Popen'接受一個'env'參數,它是一個包含環境變量的dict。您可以複製'os.environ'(當前環境)並在其中添加'CLASSPATH'。 – alexpeits