os.execvp
Python での使用について質問があります。引数のリストを作成するために使用される次のコードがあります。
引数 = [「Java」 、クラスパス , "-Djava.library.path=" + lib_path() 、各 、「-Xmx1000m」 、「-サーバー」 、「code_swarm」 、パラメータ ]
を使用して文字列を出力し、" ".join(args)
それをシェル プロンプトに貼り付けると、JVM が正常に起動し、すべてが機能します。os.system(" ".join(args))
Python スクリプトでも使用すると、すべてが機能します。
ただし、次のコードは機能しません。
os.execvp("Java", args)
次のエラーが表示されます。
認識されないオプション: -classpath [そして、私が作成したクラスパス、問題ないようです] Java仮想マシンを作成できませんでした。
それで、何が得られますか?シェルへのコピー/貼り付けまたは使用が機能するのに、なぜ機能しos.system()
ないのos.execvp()
ですか?