Я пишу небольшой инструмент, который должен вызвать скрипт Perl, чтобы сделать что-то.Как я могу выполнить скрипт Perl из своей Java-программы?
Я уже знаю и написал код о том, как его вызвать, но я должен предоставить полный путь к скрипту Perl для exec()
.
Есть ли возможность предоставить этот скрипт как своего рода пакет, который можно вызвать напрямую?
Я хочу сгенерировать исполняемый 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 программировать одну строку программы (разрешено несколько -e, пропустить программный файл) Но это не одна строка, ее целый скрипт! – Stefan