2016-04-14 19 views
0

マイコード:そのようなファイルやディレクトリなど原因:[errnoを2]いいえそのようなファイルやディレクトリ

jarfile = "res/StringUtilsv102.jar" 
#project = "5.1" 
#apkName = "com.am.fl" // added to show what ll b strin passed on to the function 
def generate_idfile(project,apkName): 
    cmd = "java -jar %s listStringIds %s %s" %(jarfile, project ,apkName) 
    arglist = shlex.split(cmd) 
    outfile = 'output.txt' 
    idfile = "idfile.txt" 
    if(os.path.exists(idfile)): 
     os.remove(idfile) 
    process = subprocess.Popen(arglist, cwd=os.getcwdu()) 
    process.wait() 
    os.rename(outfile, idfile) 

O/pが投げているエラー。 私はエラーをクリアするためにすべての可能な解決策を試みましたが、無力です。

process = subprocess.Popen(arglist, cwd="/path/to/java/dir") 

またはPATH環境変数は、あなたのためのパスを解決できるようにするためにshell=Trueを使用します。

Error: 
Traceback (most recent call last): 

    File "/home/local/libraries/i18n/data_set/data_set.py", line 150, in init_logical_path 
    genStringIdXml.generate_idfile(project, apkName) 
    File "/home/local/ANT /i18n/data_set/genStringIdXml.py", line 27, in generate_idfile 
    process = subprocess.Popen(arglist, cwd=os.getcwdu()) 
    File "/usr/lib/python2.7/subprocess.py", line 679, in __init__ 
    errread, errwrite) 
    File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child 
    raise child_exception 
OSError: [Errno 2] No such file or directory 
+0

plz完全なエラー出力を表示します。 – laike9m

+0

'cmd = 'java -version''と' cwd = os.getcwdu() 'を削除するとエラーになりますか? – jfs

+0

はい、cmd = 'java -version'とcwd = os.getcwdu()を削除してみました。それでも同じエラーが発生しています。 –

答えて

0

あなたはどちらかは、Javaのバイナリが存在するプロセスを開始する必要があります。

process = subprocess.Popen(arglist, shell=True) 
関連する問題