教Eclipse使用JBoss工具部署Ant生成的WAR文件



我被要求迁移一个旧的基于Ant的web应用程序。我正在构建并尝试使用Eclipse Luna和JBoss Tools 3.0.1.Final进行部署。JBoss实例是EAP 6.3.0(AS 7.1)。

正如我所说,构建工具是Ant。当我运行ant package时,会在/target/foo.WAR 中创建一个有效的WAR文件

出于某种原因,我花了很多时间试图向Eclipse和JBoss服务器解释foo.war文件是我想要部署的。

为此,我已经:

  • 右键单击项目根目录并打开"属性"对话框。

  • 通过转到Builders并添加Ant构建器并禁用默认Java构建器,为项目声明了自定义Ant构建器。

现在Project->Clean删除目标/文件夹;项目->生成/target/foo.war文件中的结果。

到目前为止还不错。在这一点上,我想我所需要做的就是将foo.war文件声明为Web部署程序集?如果我转到Web部署程序集并单击添加,然后添加目标/foo.war文件,它会尝试将其添加为项目库(即Web-INF/lib/foo.war)。很明显,这是错误的。

我还转到了"服务器"视图,并尝试了"部署"选项卡中的许多设置。我最接近的是"默认设置",但我在那里也没有运气。

(当我通过Eclipse中的JBoss Tools启动JBoss,然后在端口9990上调出管理控制台时,我可以以这种方式上传和部署WAR,而不会出现任何问题。)

我确信有一些明显的东西我错过了。有人能帮助IntelliJ用户吗?我见过https://stackoverflow.com/a/4261178/3223711,但它似乎错过了"最后一英里",因为问题不在于生成WAR,而在于让JBoss真正拿起并使用它。

谢谢!

由于您实际上并没有根据Eclipse知识将项目配置为war项目,因此您需要告诉JBoss Tools您希望部署特定的war文件。

要做到这一点,右键单击target/foo.war并选择"标记为可部署"-这告诉JBoss Tools这个foo.war可以部署,这意味着你现在可以将它拖到服务器上,或者通过服务器上的add/Remove添加它。

最新更新