Код, запущенный Хадсоном, не может найти исполняемый файл в командной строке
-
02-07-2019 - |
Вопрос
Я устраиваюсь на свою первую работу в Хадсоне и сталкиваюсь с некоторыми проблемами.Задание отслеживает два репозитория, один из которых содержит файлы настройки нашей БД, другой - фрагмент кода, который проверяет и тестирует файлы настройки БД.
Часть выполняемого кода отправит проверенные установочные файлы в PostgreSQL с помощью инструмента командной строки psql, используя Runtime.exec().Этот код отлично работает на моей машине, но когда Хадсон выполняет его (на другой машине), я получаю следующую ошибку:
java.io.IOException: Cannot run program "psql": CreateProcess error=2, The system cannot find the file specified
psql.exe находится на пути, и я могу выполнить его, введя все это в командной строке, из того же места, где Хадсон выполняет код.Файл, предназначенный для передачи в psql, существует.
Есть какие-нибудь идеи?
Решение
Я считаю, что вам нужно, чтобы программа находилась в пути, когда вы запускаете hudson или ведомое устройство.Несмотря на то, что у вас есть возможность указать путь в Хадсоне, похоже, это не работает.Вы также могли бы указать полный путь в команде, что в любом случае действительно хорошая идея с точки зрения безопасности.