JBoss远程部署

时间:2010-02-28 22:16:07

标签: deployment jboss

我知道像Websphere和Weblogic这样的应用服务器具有可以使用Ant任务或Jython编写脚本的远程部署功能。 JBoss有同等的东西吗?基本上,如果我在某个已知位置有一台服务器并且我有适当的凭据,我该如何远程部署到JBoss?

3 个答案:

答案 0 :(得分:5)

部署到远程JBoss AS并不容易,因为JBoss AS在该领域没有提供太多帮助。但这里有一些想法/建议:

  • 使用JBoss JSR-88 implementation(在Java EE 6中进行了修剪,因此将在Java EE 7中删除,但这会给你一些时间)。
  • 使用@skaffman建议的基础DeployManager,并将您的deployable上传到远程服务器并使用file://协议或将其放在Web服务器上并使用http://。< / LI>
  • 使用货物(但有a limitation,必须首先将可部署的数据库上传到远程服务器。)
  • 使用使用JMX部署界面的jboss-maven-plugin,因此支持远程部署(请参阅MJBOSS-3),如上所述。
  • 或者只需将您的可部署(FTP,SCP)上传到远程计算机并将其远程移动到deploy目录。

答案 1 :(得分:2)

好问题。你没有说你正在谈论的JBoss版本(v4和v5与粉笔和奶酪不同),所以我假设JBoss 4.x.可能与JBoss 5有一些相似之处,但我只熟悉4。

JBoss的部署者基于URL,所有可部署组件的扫描都是通过URL完成的。部署者本身由MainDeployer JMX bean表示,并且在JMX树上,可以通过HTTP或RMI远程调用它。部署者的一种方法是deploy(URL)。我只在file:// URL的上下文中使用过它,但从理论上讲它也适用于HTTP URL。所以你可以在另一台服务器上给它一个EAR / WAR文件的URL,它应该可以工作,在本地复制EAR / WAR并解压缩它。

我认为你不能做的是将某些内容直接“上传”到服务器并让它进行部署。我从来没有在JBoss中看到过这样的功能(这并不是说它不存在,当然,只是因为我还没有见过这样的东西)。

答案 2 :(得分:0)

根据服务器设置(您说您已获得凭据),您可以随时将您的EAR / WAR文件sftp到JBoss的deploy目录。请注意,一个潜在的问题是JBoss可能会在完成上传之前开始部署文件,这会导致JBoss抱怨损坏的EAR / WAR文件。