maven - 如何使用 Netbeans 7.3.1 + JBoss AS7 部署 WAR

标签 maven jakarta-ee netbeans jboss jboss7.x

这是一个使用 Intellij + AS7 构建和部署的现有项目。我想使用 Netbeans 7.3.1 进行构建和部署,所以我在 NetBeans 中创建了一个新的 Maven 项目,选择了“使用 Maven pom.xml 文件导入项目”选项。 NetBeans 识别模块并使用 Maven 成功构建项目。非常好。

Webapp assembled in [931 msecs]
Building war: G:\Patrac_Netbeans\Patrac-web\target\Patrac-web-1.0.war

接下来,我使用 NetBeans 的服务面板启动了 JBoss。接下来,我单击“运行项目”按钮,希望进行部署,但 NetBeans 只是再次重建了项目。然后我记得配置 Intellij 以使用目标目录构建和部署。我看不到在 NetBeans 中执行此操作的方法。那么,如何使用 NetBeans 设置部署呢?

2013 年 8 月 20 日更新:

EJB 和 WAR 模块的部署工作。下面是部署 EJB 时的输出:

cd G:\Patrac_Netbeans\Patrac-ejb; "JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25" "\"G:\Program Files\NetBeans 7.3.1\java\maven\bin\mvn.bat\"" -Dnetbeans.deploy=true package

Scanning for projects...

Building Patrac EJB module 1.0

...

BUILD SUCCESS

Total time: 8.251s

Finished at: Tue Aug 20 14:33:38 EDT 2013

Final Memory: 22M/364M

NetBeans: Deploying on JBoss Application Server

profile mode: false
debug mode: false
force redeploy: true

Distributing G:\Patrac_Netbeans\Patrac-ejb\target\Patrac-ejb.jar to [org.jboss.as.ee.deployment.spi.DeploymentManagerTarget@45fbf23c]

Deploying G:\Patrac_Netbeans\Patrac-ejb\target\Patrac-ejb.jar

但是,当我尝试运行整个应用程序时,NetBeans 并未部署:

cd G:\Patrac_Netbeans; "JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25" "\"G:\Program Files\NetBeans 7.3.1\java\maven\bin\mvn.bat\"" -Dnetbeans.deploy=true package

Scanning for projects...

Reactor Build Order:

PATRAC

Patrac EJB module

Patrac Web module

Building PATRAC 1.0-SNAPSHOT

...

Building Patrac EJB module 1.0

...

Building Patrac Web module 1.0

...

[war:war]

Packaging webapp

Assembling webapp [Patrac-web] in [G:\Patrac_Netbeans\Patrac-web\target\Patrac.war]

Processing war project

Copying webapp resources [G:\Patrac_Netbeans\Patrac-web\src\main\webapp]

Webapp assembled in [557 msecs]

Building war: G:\Patrac_Netbeans\Patrac-web\target\Patrac-web-1.0.war

Reactor Summary:

PATRAC - Physician Assistant Tracking ............. SUCCESS [0.043s]

Patrac EJB module ................................. SUCCESS [8.100s]

Patrac Web module ................................. SUCCESS [2.324s]

BUILD SUCCESS

Total time: 10.882s

Finished at: Tue Aug 20 14:17:34 EDT 2013

Final Memory: 25M/366M

为什么不部署 NetBeans?也许问题是它不知道组装好的WAR在哪里?查看输出,它从 G:\Patrac_Netbeans 运行 Maven,这是根 POM 所在的位置。然而,组装好的 WAR 位于 G:\Patrac_Netbeans\Patrac-web\target\Patrac.war

2013 年 8 月 21 日更新:

仅供引用,插件配置如下:

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

正如@happymeal 正确指出的(请参阅下面他的评论),只需查看 Maven 的输出,插件就不会运行。感谢@James R. Perkins,我意识到实际上有两个插件:jboss-maven-pluginjboss-as-maven-plugin 因为我使用的是后者我使用了错误的目标:jboss:deploy 而不是 jboss-as:deploy。更正此错误并在 Netbeans 中重新运行项目出现以下错误:

Caused by: java.io.FileNotFoundException: G:\Patrac_Netbeans\target\Patrac-1.0-SNAPSHOT.maven-project (The system cannot find the path specified)

接下来,我添加了一些最终解决问题的配置参数:

            <plugin>
                <groupId>org.jboss.as.plugins</groupId>
                <artifactId>jboss-as-maven-plugin</artifactId>
                <version>7.4.Final</version>
                <configuration>
                    <force>true</force>
                    <targetDir>G:\Patrac_Netbeans\Patrac-web\target</targetDir>
                    <filename>Patrac-web-1.0.war</filename>
                </configuration>                    
            </plugin>

问题解决了!

最佳答案

netbeans 中“运行项目”按钮的默认 Maven 目标是 package。此目标构建项目但不部署您的应用程序。

您可以通过以下方式更改它:

  1. 右键单击您的项目并转到属性。
  2. 在类别面板下,选择操作。
  3. 选择“运行项目”操作并编辑“执行目标”文本框(例如 jboss:start)。

请注意,您将需要 jboss maven plugin .

关于maven - 如何使用 Netbeans 7.3.1 + JBoss AS7 部署 WAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18325892/

相关文章:

java - 通过避免加入查找表来优化 JPA 查询?

java - 如何在 wildfly-8.2.0.Final 的自定义文件夹位置生成 server.log

java - log4j 在 Netbeans 中使用不正确的属性文件

java - 如何退出 NetBeans 平台 GUI 应用程序?

java - "No Suitable Driver"基本 java derby DB 读取错误

java - 为什么 Tomcat 会为现有的 JAR 文件抛出 FileNotFoundExceptions?

java - Maven 构建 War 文件包含错误

node.js - Nodejs : managing distributed transactions like java ee

java - JSON 2 POJO 离线

java - 运行特定测试类的maven命令得到org.testng.TestNGException