maven - 如何使用 Maven 将 .war 文件部署到 JBoss AS 7 服务器?

标签 maven jboss

我有“pom.xml”文件,它连接到 maven 并检查代码并创建一个 war 文件。现在我必须将创建的 war 文件部署到 JBoss Application Server 7。下面是我的 pom.xml .

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org /2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0             http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.mycompany.deploy</groupId>
   <artifactId>deploy-app</artifactId>
   <packaging>war</packaging>
   <version>0.0.1-SNAPSHOT</version>
   <name>deploy-app Maven Webapp</name>
   <url>http://maven.apache.org</url>
   <scm>
      <connection>scm:svn:http://d-113017553/svn/PRONTO/trunk/dev</connection>
      <developerConnection>scm:svn:http://d-113017553/svn/PRONTO/trunk           /dev</developerConnection>
      <url>http://d-113017553/svn/PRONTO/trunk/dev</url>
   </scm>
   <dependencies>
      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <version>3.8.1</version>
         <scope>test</scope>
      </dependency>
   </dependencies>
   <build>
      <finalName>deploy-app</finalName>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <version>1.8.1</version>
            <configuration>
               <connectionType>connection</connectionType>
               <username>keerthana</username>
               <password>keerthana</password>
               <checkoutDirectory>${project.basedir}/co/src</checkoutDirectory>
               <workingDirectory>${project.basedir}/co/src</workingDirectory>
            </configuration>
         </plugin>
         <plugin>
            <artifactId>maven-release-plugin</artifactId>
            <version>2.2.2</version>
            <configuration>
               <releaseProfiles>release</releaseProfiles>
               <goals>scm:checkout</goals>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.jboss.as.plugins</groupId>
            <artifactId>jboss-as-maven-plugin</artifactId>
            <version>7.3.Final</version>
            <configuration>
               <jboss_Home>D:\Workspace\deploy-app\target</jboss_Home>
               <serverName>default</serverName>
               <fileName>target/deploy-app.war</fileName>
            </configuration>
         </plugin>
      </plugins>
   </build>
</project>

请给我将我的 war 文件部署到 Jboss 服务器的步骤。

最佳答案

首先,使用bin/add-user.sh添加 管理用户。

然后,将其存储到 settings.xml 中。

<profiles>

    <profile>
        <id>myproject-prod<id>
        <activation><activeByDefault>true</activeByDefault></activation>
        <properties>
            <myproject.deploy.pass.prod>mySecretPassword</myproject.deploy.pass.prod>
        </properties>
    </profile>

</profiles>

然后,配置 pom.xml .
<properties>
    <jboss-as.deploy.hostname>localhost</jboss-as.deploy.hostname>  <!-- Where to deploy. -->
    <jboss-as.deploy.user>admin</jboss-as.deploy.user>
    <jboss-as.deploy.pass>${myproject.deploy.pass.prod}</jboss-as.deploy.pass>
    <plugin.war.warName>${project.build.finalName}</plugin.war.warName>
</properties>

...
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <filteringDeploymentDescriptors>true</filteringDeploymentDescriptors>
                <warName>${plugin.war.warName}</warName>
            </configuration>
        </plugin>            

        <!-- JBoss AS plugin to deploy the war. -->
        <plugin>
            <groupId>org.jboss.as.plugins</groupId>
            <artifactId>jboss-as-maven-plugin</artifactId>
            <version>7.4.Final</version>
            <configuration>
                <force>true</force>
                <hostname>${jboss-as.deploy.hostname}</hostname>
                <username>${jboss-as.deploy.user}</username>
                <password>${jboss-as.deploy.pass.prod}</password>
                <fileNames>
                    <fileName>target/${plugin.war.warName}.war</fileName>
                </fileNames>
            </configuration>
        </plugin>
    </plugins>

然后简单地...
mvn clean deploy;

这是从一个 JBoss 项目减少的,可能包含拼写错误,但应该可以工作。

关于maven - 如何使用 Maven 将 .war 文件部署到 JBoss AS 7 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17357175/

相关文章:

java - JBOSS如何识别EAR文件

maven - 运行 mvn clean install 后未生成目标文件夹

java - war 文件的大小是否会以某种方式影响应用程序和/或应用程序服务器的性能?

java - Maven增量构建

java - 如何在 Maven 中构造一个新项目,以便它找到 jar 文件并且不会给出依赖项错误

java - Maven 安装目标 - JBoss - java.net.ConnectException : JBAS012144: Could not connect to remote://localhost:9999. 连接超时

java - Seam 2.2.2.Final 使用 maven 和 Jboss 6

java - 使用 Java 应用程序连接应用程序服务器并检索数据的最佳方式

maven - 如何在 Enunciate 生成的文档中包含 JSON 响应正文的格式?

maven - 指定所有插件执行的默认目标