Загрузите WAR из репозитория снимков и разверните его на локальном JBoss с помощью mvn

В настоящее время я разверну свой war с jboss:hard-deploy на мой JBoss 6 AS. Это прекрасно работает, но я должен оформить проект из SVN и упаковать его.

war Jenkins уже загрузил в наш внутренний репозиторий моментальных снимков, и было бы неплохо, если бы я мог загрузить его на тестовый сервер из этого репозитория и напрямую развернуть его на JBoss с помощью maven.

Этот вопрос связан с тем, что Maven развернул войну артефактов из репозитория на удаленный сервер, но я не думаю, что ответ правильный (см. Комментарий там).

1 ответ

Решение

В идеале вы хотели бы настроить Jenkins для развертывания на вашем тестовом сервере в рамках сборки CI.

В качестве альтернативы, если вы хотите вручную запустить скрипт на сервере, на котором вы развертываете, вы можете настроить конкретный pom.xml выполнить эту задачу. Сначала установите плагин зависимостей для загрузки вашей войны:

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.3</version>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>copy</goal>
        </goals>
        <configuration>
          <artifactItems>
            <artifactItem>
              <groupId>my-group</groupId>
              <artifactId>my-web-archive</artifactId>
              <version>my-vesion</version>
              <type>war</type>
              <destFileName>my-web-archive.war</destFileName>
            </artifactItem>
          </artifactItems>
          <outputDirectory>${project.build.directory}</outputDirectory>
        </configuration>
      </execution>
    </executions>
  </plugin>

Подставляя идентификатор группы, идентификатор артефакта и версию для соответствующих свойств вашего файла WAR. Затем настройте плагин JBoss для развертывания загруженной WAR:

  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>jboss-maven-plugin</artifactId>
    <version>1.5.0</version>
    <configuration>
      <jbossHome>/opt/jboss-6</jbossHome>
      <serverName>all</serverName>
      <fileName>${project.build.directory}/my-web-archive.war</fileName>
    </configuration>
  </plugin>

После этого вы сможете загрузить артефакт из своего внутреннего репозитория и развернуть его в локально работающем контейнере JBoss с помощью следующей команды:

mvn package jboss:hard-deploy
Другие вопросы по тегам