Запуск файла bat из исходной папки в java

63
8

Я пытаюсь запустить.bat файл в java, но я использую конкретный путь (C:..). Я надеялся, что он запустит файл bat в моей папке src в java. Как мне его закодировать? это мой текущий код:

run.exec("cmd start /c C:\Users\mico\workspace\ANTLR java\src\jython2.5.2");

и я также хочу поместить исходный файл (путь туда, где файл сохраняется)

это команда cmd, которую я использую:

C:\Users\mico\workspace\ANTLR java\src\jython2.5.2\jython C:\Users\mico\workspace\ANTLR java\src\save.py

Как выполнить всю команду, не делая ее статическим путем и загружая файл?

спросил(а) 2021-01-26T01:48:11+03:00 4 месяца, 3 недели назад
1
Решение
63

Прежде всего, вам нужно установить PWD вашей программы в известное место (например, путь выше src). Когда вы запускаете свой jython/ANTLR, вы можете использовать ~dp0 а переключатель /D start это делать. Вторая часть состоит в том, что, как только вы знаете PWD, вы можете просто использовать относительный путь в своем java-источнике.

ответил(а) 2021-01-26T01:48:11+03:00 4 месяца, 3 недели назад
45

Вы можете определить путь к файлу в файле Autoexec.bat путем добавления строки пути или выполнить следующие действия.

Щелкните правой кнопкой мыши на моем компьютере Выберите вкладку Advance Нажмите кнопку "Переменная среды" Во втором списке (системные переменные) найдите путь и нажмите кнопку "Изменить" Диалоговое окно "Новый диалог" откроется с двумя текстовыми полями, во втором текстовом поле (переменное значение), перейдите в последнюю позицию и добавьте один; (точка с запятой), а затем добавьте путь к файлу.bat Теперь выполните свой код.

ответил(а) 2021-01-26T01:48:11+03:00 4 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема