私はいくつかのことをするためにPerlスクリプトを呼び出す必要がある小さなツールを書いています。JavaプログラムからPerlスクリプトを実行するにはどうすればよいですか?
私はすでにそれをどのように呼び出すかを知っていますが、exec()
のPerlスクリプトへの完全修飾パスを提供する必要があります。
このスクリプトを直接呼び出すことのできるパッケージとして提供する可能性はありますか?
実行可能なJARを後で生成し、Perlスクリプトを提供するツール全体と、その場所がわからないようにしたいと考えています。
現在、そのような:
private void extractAudioStream() {
inputFile = "C:\\Users\\Stefan\\Documents\\temp_tshark\\forward_stream.pcap";
outputFile_audiostream = "C:\\Users\\Stefan\\Documents\\temp_tshark\\forward_stream.pcm";
String perl_cmd = "perl C:\\Users\\Stefan\\Documents\\tshark_bin\\rtp_dump.pl " + inputFile + " " + outputFile_audiostream;
try {
p = Runtime.getRuntime().exec(perl_cmd);
ホープ質問は十分に明確です。
完全修飾パスがシステムperl
コマンドで待機するため、これは簡単ではないと思いますか?私の 現在の場所を検出し、それを私のcmd-Stringに渡す可能性はありますか?
私はコマンドラインからローカルでそのコマンドを実行した場合、それが実行されていません。それは助けから言います: -eプログラムの1行(いくつか-eは許され、プログラムファイルを省略します) しかし、その1行だけではなく、その全体のスクリプト! – Stefan