Выполнение команды: mvn exec:java -D"exec.mainClass"="org.matsim.project.RunMatsim" из терминала в папке проекта, где находится pom.xml, не создает ошибок и проект работает правильно.
Но при запуске следующего кода из моего скрипта Python
Код: Выделить всё
import subprocess as sp
def execute(cmd):
popen = sp.Popen(cmd, stdout=sp.PIPE, universal_newlines=True,shell=True)
for stdout_line in iter(popen.stdout.readline, ""):
yield stdout_line
popen.stdout.close()
return_code = popen.wait()
if return_code:
raise sp.CalledProcessError(return_code, cmd)
for path in execute(["mvn", "exec:java" ,'-D"exec.mainClass"="org.matsim.project.MatsimRun"']):
print(path, end="")
[ОШИБКА] Для этой сборки не указаны цели. Вы должны указать допустимую фазу жизненного цикла или цель в формате : или :[:]:. Доступные фазы жизненного цикла: проверка, инициализация, генерация-источников, обработка-источников, генерация-ресурсов, обработка-ресурсов, компиляция, классы-процессов, генерация-тестовых-источников, обработка-тестовых-источников, генерация-тестовых-ресурсов, обработка. -test-resources, test-compile, процесс-тест-классы, тест, подготовка-пакета, пакет, пред-интеграционный тест, интеграционный-тест, пост-интеграционный тест, проверить`
Почему это так? Что может быть не так?
Возникшие предупреждения одинаковы для обоих случаев (терминал, скрипт Python).
Подробнее здесь: https://stackoverflow.com/questions/607 ... rom-python
Мобильная версия