Используйте exec-maven-plugin для выполнения сценария оболочки в WindowsJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Используйте exec-maven-plugin для выполнения сценария оболочки в Windows

Сообщение Anonymous »

У меня есть pom, который использует плагин exec-maven для выполнения сценария оболочки с тремя параметрами. При запуске mvn clean install -X -e на этом этапе происходит сбой с ошибкой

Код: Выделить всё

[DEBUG] Toolchains are ignored, 'executable' parameter is set to C:\dev\intellij\projects\project-in-question\driver/src/main/scripts/dependencies.sh
[DEBUG] Executing command line: [C:\dev\intellij\projects\project-in-question\driver\src\main\scripts\dependencies.sh, C:\dev\intellij\projects\project-in-question\driver\target/project-in-question.dependencies, C:\dev\intellij\projects\project-in-question\driver\target, third-parameter]

[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (dependencies) on project project-in-question: Command execution failed.: Cannot run program "C:\dev\intellij\projects\project-in-question\driver\src\main\scripts\dependencies.sh" (in directory "C:\dev\intellij\projects\project-in-question\driver"): CreateProcess error=193, %1 is not a valid Win32 application -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (dependencies) on project project-in-question: Command execution failed.
Соответствующая часть pom.xml:

Код: Выделить всё

        ...

org.codehaus.mojo
exec-maven-plugin
1.3.2


...


dependencies
compile

exec


${project.basedir}
${project.basedir}/src/main/scripts/dependencies.sh

${project.build.directory}/${project.artifactId}.dependencies
${project.build.directory}
project-in-question







Я чувствую, что это может быть связано с операционными системами, где я (единственный) работаю на Windows 10 x64, а другие работают на Mac. Если я запустил эту команду в Cygwin, она завершится успешно, выполнив сценарий оболочки с правильными параметрами. Даже с помощью cmd.exe я могу выполнить этот скрипт.

Но при сборке проекта с использованием Maven каждый раз происходит сбой. Я даже очистил сценарий оболочки, так что он буквально состоял из следующего:

Код: Выделить всё

#!/bin/sh
echo "hello world"
Хотя настоящий исходный сценарий оболочки принимает три параметра, я получаю точно такое же сообщение об ошибке, что %1 не является допустимым приложением Win32, и этот сценарий не принимает никаких аргументов и не пытается ссылаться на них; это просто эхо «привет, мир».

Я заметил, что косые черты в различных параметрах перепутаны, и я не уверен, что это виновато; похоже, это больше связано с попыткой выполнить сценарий оболочки в Windows из Maven.

Может ли кто-нибудь помочь мне с этим и объяснить, что происходит? Если потребуются какие-либо дополнительные сведения, просто дайте мне знать, и я предоставлю дополнительную информацию.

Подробнее здесь: https://stackoverflow.com/questions/463 ... on-windows
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»