Eclipse Mars - чистая сборка и перенос войны в каталог развертывания Jboss

Я использую Eclipse Mars с плагином интеграции Maven и настраиваю сервер JBoss EAP 7.0 в Eclipse Mars.

Я следую руководству по настройке сборки maven и успешно создаю и генерирую войну в целевой директории.

Возможно ли это, используйте maven build run > "clean install", чтобы создать новый project.war в целевом каталоге. Между тем, project.war будет загружать в каталог%JBOSS_HOME%\standalone\deployments. Я пытаюсь связать процесс сборки и экспорта одновременно.

Я пытаюсь добавить следующую конфигурацию в pom.xml, но не работает.

<configuration>
    ....
    <webappDirectory>D:\jboss-eap-7.0.0\jboss-eap-7.0\standalone\deployments\</webappDirectory>
</configuration>

Или же

<configuration>
    ....
    <outputDirectoryD:\jboss-eap-7.0.0\jboss-eap-7.0\standalone\deployments\</outputDirectory>
</configuration>

Или же

<executions>
    <execution>
        <phase>install</phase>
        <configuration>
            <target>
               <copy file="D:\workspace\project\target\project.war"
                                    todir="D:\jboss-eap-7.0.0\jboss-eap-7.0\standalone\deployments\" />
            </target>
        </configuration>
        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>

Результат:

[ERROR] Could not find goal 'run' in plugin org.apache.maven.plugins:maven-compiler-plugin:3.1 among available goals testCompile, compile, help -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoNotFoundException

1 ответ

Решение

После нескольких попыток, я решил использовать альтернативное решение. Что мне нужно в основном скомпилировать файл войны и развернуть на сервере Jboss.

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

Пакетная работа

SET WORKSPACE=D:\workspace\project\
SET JBOSS_DEPLOYMENT=D:\jboss-eap-7.0.0\jboss-eap-7.0\standalone\deployments\

cd /D %WORKSPACE%
echo %WORKSPACE%

call mvn clean package

xcopy /y %WORKSPACE%\target\*.war %JBOSS_DEPLOYMENT%

echo Move war from %WORKSPACE% to %JBOSS_DEPLOYMENT%

pause

Это пакетное задание скомпилирует новый файл войны и скопирует войну в каталог развертывания JBoss, сервер автоматически выполнит горячее развертывание, если обнаружит какое-либо обновление войны.

Другие вопросы по тегам