2011-04-30 193 views
21

我想将Maven项目的WAR部署到JBoss服务器上。我知道从Eclipse Export-> War部署WAR文件到JBoss。但是我怎么能为Maven项目做到这一点。任何一步一步的信息或有用的网站链接将对我非常有帮助。谢谢。如何从Eclipse中将Maven Project的WAR部署到JBoss服务器?

编辑:我已经再次添加

<plugin> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>jboss-maven-plugin</artifactId> 
<version>1.5.0</version> 
<configuration> 
    <jbossHome>/home/tanmoy/Jboss</jbossHome> 
    <serverName>all</serverName> 
    <fileName>target/LoginExample-1.0.war</fileName> 
</configuration> 
</plugin> 

为了我的pom.xml和进口作为Maven项目,但在右侧点击进入pom.xml中的运行方式我没有看到任何部署选项。

+1

那些绊脚石这里...使用官方[jboss-as-maven-plugin](https://docs.jboss.org/jbossas/7/plugins/maven/lat est /) – vault 2014-08-08 17:03:14

回答

18

我找到了解决方案,我正在分享,因为它可能对某人有帮助。 我的配置是:

  1. Fedora 14个的
  2. 赫利俄斯的Eclipse的Java EE
  3. 的JBoss 4.2.0-GA

您还需要

  1. 在安装Maven你系统
  2. 在您的Eclipse中安装m2eclipse插件

现在您已准备好开始创建项目。

  1. 打开Eclipse的>选择您的工作空间
  2. 建立服务器。要建立服务器
    1. 得到了窗口 - >显示视图>服务器
    2. 右键单击服务器窗格中,选择新建 - >服务器
    3. 从窗口
    4. 选择JBoss-> JBoss的4.2版打开
    5. 单击下一步
    6. 浏览应用程序服务器目录,即JBoss所在文件系统中的位置。
    7. 单击Finish
  3. 创建一个新的动态Web项目,以创建项目
    1. 转到文件 - >新建 - >项目,选择Web节点
    2. 单击下一步
    3. 下的动态Web项目
    4. 从目标运行时给一个项目名称
    5. 选择JBoss的4.2版
    6. 单击下一步两次
    7. 您将需要web.xml,因此请确保在最后一页中选中“生成web.xml部署描述符”。你
  4. 现在,您需要启用Maven的依赖管理为创建的项目
  5. 单击完成和Eclipse将创建一个动态Web项目。要做到这一点
    1. 右键点击项目名称
    2. 选择Maven->启用依赖管理
    3. 的窗口将打开POM创作从包装下拉菜单
    4. 单击Finish
    5. 选择战争并且您的pom.xml将被创建
  6. 它会搞乱您的构建路径。要修复它
    1. 在项目名称上点击右键选择属性
    2. 选择Java从左侧窗格中
    3. 转到图书馆标签
    4. 编辑JRE系统库构建路径。编辑系统库
      1. 选择JRE系统库,并单击右侧
      2. 编辑按钮选择执行环境的JavaSE-1.6从下拉菜单中
      3. 单击Finish
    5. 转到源标签
      1. 单击Add Folder
      2. 选择SRC
      3. 点击OK,你的项目已准备就绪
  7. 现在添加一些源文件,配置web.xml和pom.xml的,并将其导出到JBoss服务器WAR。要部署它
    1. 首先拷贝所有需要的jar到lib文件夹中的WEB-INF
    2. 无论何时添加依赖关系的pom.xml Mavan将下载所需的jar并添加到您的项目。您可以通过展开节点Project-> Java Resource-> Libraries-> Maven Dependencies来查看这些罐子。每个jar文件旁边都给出了路径到jar。它通常驻留在/.m2/repository中。您可以将这些文件复制到上述lib文件夹中。
    3. 现在右键点击项目名称
    4. 选择导出 - > WAR文件
    5. 在目标浏览路径到您的服务器
    6. 单击完成,它将部署WAR文件到JBoss服务器。

注:有与JBoss的lib的JAR(S)重叠的WAR的JAR(S)的一些可能性。那么你应该采取适当的行动。就像从WAR中移除jar(如果jar的版本与JBoss的版本相同或者更低),或者替换JBoss的jar并从WAR中移除该jar(如果你的jar的版本高于JBoss的版本)。在做任何事情之前,我应该小心这一点并收集好的知识。

谢谢。

+4

在Juno 4-2中选择configure-> convert to maven project。 http://stackoverflow.com/questions/10362166/maven-option-is-not-found-in-eclipse – 2013-07-05 21:38:00

+0

'选择导出 - > WAR文件':无论如何,我可以通过单独的maven做到这一点? – 2014-06-18 11:05:36

+0

@Mr_and_Mrs_D你可以设置你的maven构建目标路径指向服务器的部署目录。 – 2014-06-18 14:20:33

5

您可以右键单击pom.xml文件并选择Run As - >Maven Build。将构建目标设置为clean package。完成后,进入项目的目标目录,右键点击战争并导出,就像你现在正在做的那样。

编辑:

从你的pom.xml内做到这一点使用JBoss的Maven插件:http://mojo.codehaus.org/jboss-maven-plugin/examples/deploy-undeploy-examples.html

+0

Run As-> Maven安装生成项目并将WAR放置到目标文件夹中,我可以手动将它复制粘贴到JBoss中,但我正在谈论自动部署到JBoss。是否可以通过pom.xml? – 2011-04-30 15:46:14

+0

对不起,我误解了你的问题。现在编辑我的答案 – 2011-04-30 15:48:21

+0

我编辑了我的问题,以提供更多关于jboss-maven-plugin的信息。 – 2011-04-30 16:00:27

2

假设

我假设你已经安装的插件对Maven的Eclipse插件。

安装

虽然在项目管理器中选择 运行选择项目 - >运行方式 - > Maven的安装

运行JBoss

  1. 去跑 - - >运行配置..

  2. 添加新的Maven构建

  3. 名称的过程中,选择将要部署战争

  4. 设定的目标基本目录 - > JBoss的:开始

通过以下步骤你可以通过Eclipse部署每一件事情。

玩得开心。 :)

3

的正确格式为:

<fileName>${basedir}/target/webapp.war</fileName> 
0

使用下面的目标,在JBoss中的文件夹

 
clean install jboss:hard-deploy 
1

部署您的战如果是行家应用程序(EAR)或(JAR)或无论如何,你只需添加到你的POM。XML:

 <plugin> 
      <groupId>org.jboss.as.plugins</groupId> 
      <artifactId>jboss-as-maven-plugin</artifactId> 
      <configuration> 
       <filename>${artifactId}-${project.version}.ear</filename> 
       <port>9999</port> <!-- you change it following what you have on your server config --> 
      </configuration> 
     </plugin> 

而且在Eclipse运行配置您为目标:jboss-as:deploy

当然我说她讲的Jboss AS7或EAP6

+0

它将如何识别服务器(如果我有多个)? – 2015-10-25 16:09:43

2

只需添加以下插件的pom.xml工作为了我。

<build> 
    ... 
    <plugins> 
     ... 
     <plugin> 
      <groupId>org.jboss.as.plugins</groupId> 
      <artifactId>jboss-as-maven-plugin</artifactId> 
      <version>7.9.Final</version> 
     </plugin> 
     ... 
    </plugins> 
    ... 
</build> 

使用命令提示符可以部署或取消部署工件。

mvn jboss-as:redeploy 
    mvn jboss-as:undeploy 

注:以上选项使用http://localhost:9999 URL部署神器服务器。在命令执行之前,Jboss服务器应该在后台运行。

也可以使用eclipse来执行上述目标。

步骤1:点击运行配置。 enter image description here

第2步:创建一个新的Maven构建 enter image description here

第3步:更新构建细节,如图所示。 enter image description here

更多选项只能在

https://docs.jboss.org/jbossas/7/plugins/maven/latest/examples/deployment-example.html

1
<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-dependency-plugin</artifactId> 
     <executions> 
      <execution> 
       <id>copy-war</id> 
       <phase>install</phase> 
       <goals> 
        <goal>copy</goal> 
       </goals> 
       <configuration> 
        <artifactItems> 
         <artifactItem> 
          <groupId>${project.groupId}</groupId> 
          <artifactId>${project.artifactId}</artifactId> 
          <version>${project.version}</version> 
          <type>${project.packaging}</type> 
          <overWrite>true</overWrite> 
          <outputDirectory>C:\jboss-as-7.1.1.Final_AMGEN\jboss-as-7.1.1.Final\standalone\deployments</outputDirectory> 
          <destFileName>${project.build.finalName}.${project.packaging}</destFileName> 
         </artifactItem> 
        </artifactItems> 
       </configuration> 
      </execution> 
     </executions> 
    </plugin> 

这里<outputDirectory>中找到 “在JBoss部署文件夹的containes地址为” </outputDirectory> 把给定的代码相应地pom.xml

相关问题