这是一个使用 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。接下来,我单击了 Run Project 按钮,预计会发生部署,但 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 包
正在扫描项目...
构建 Patrac EJB 模块 1.0
...
建立成功
总时间:8.251s
完成时间:2013 年 8 月 20 日星期二 14:33:38 EDT
最终内存:22M/364M
NetBeans:部署在 JBoss 应用服务器上
profile mode: false debug mode: false force redeploy: true
分发 G:\Patrac_Netbeans\Patrac-ejb\target\Patrac-ejb.jar 到 [org.jboss.as.ee.deployment.spi.DeploymentManagerTarget@45fbf23c]
部署 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 包
正在扫描项目...
反应堆建造顺序:
帕特拉克
Patrac EJB 模块
Patrac 网络模块
构建 PATRAC 1.0-SNAPSHOT
...
构建 Patrac EJB 模块 1.0
...
构建 Patrac Web 模块 1.0
...
[战争:战争]
打包 webapp
在 [G:\Patrac_Netbeans\Patrac-web\target\Patrac.war] 中组装 webapp [Patrac-web]
加工战争项目
复制 webapp 资源 [G:\Patrac_Netbeans\Patrac-web\src\main\webapp]
Webapp 在 [557 毫秒] 内组装
构建战争:G:\Patrac_Netbeans\Patrac-web\target\Patrac-web-1.0.war
反应堆总结:
PATRAC - 医师助理跟踪............成功 [0.043s]
Patrac EJB 模块 .................... 成功 [8.100s]
Patrac Web 模块 .................... 成功 [2.324s]
建立成功
总时间:10.882s
完成时间:2013 年 8 月 20 日星期二 14:17:34 EDT
最终内存:25M/366M
为什么不部署 NetBeans?也许问题是它不知道组装好的WAR在哪里?查看输出,它从G:\Patrac_Netbeans
根 POM 所在的位置运行 Maven。然而,组装好的 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-plugin
并且jboss-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>
问题解决了!