使用Cargo发布Web程序

最近出于项目需要,希望在JBoss AS上通过Maven部署发布应用程序。以前jetty和tomcat还好,maven都有不错的插件支持,jboss的似乎就差一些了,似乎只有mojo和cargo这两个支持maven2插件来允许动态发布。我选择cargo作为研究方向:

  1. Cargo的页面比较专业,信息丰富。相比来说,mojo的页面似乎就是maven site自己生成的页面,没什么有用的信息;
  2. Cargo支持远程发布,这也是很吸引我的特性;
  3. Cargo和mojo不管谁好谁坏,我其实用的只是最肤浅的功能,所以,呵呵,择一研究即可。

Cargo Maven Plugin的主页: http://cargo.codehaus.org/Maven2+plugin

本blog抱着工具就是可用就行的态度,通过一个简单的例子,看看如何利用maven创建并用cargo发布程序。

1. 创建演示用web应用程序

利用maven archetype创建基本的web应用程序。具体信息,参考http://maven.apache.org/guides/mini/guide-webapp.html

此命令用来创建mywebapp的目录,在mywebapp目录中,包含一个maven enable的最基本的web应用程序。

2. 打包web应用程序

利用maven的package命令,打包web应用程序

3. 发布到jetty上

修改pom.xml加入Cargo plugin,默认值即是jetty,所以只需很少配置。

在命令行输入

Cargo即可自行下载jetty,并发布程序了。用户可以通过访问http://localhost:8080/mywebapp 访问发布的程序。

 

4. 发布到tomcat 6.x上
修改pom.xml加入Cargo plugin,同时,由于tomcat不再是默认值,因此需要配置cargo中的一些与tomcat有关的参数。

除了加上了containerId等不同外,与jetty的配置不同的,还有就是引入了container.home,这种方式适用于下载好container的情况下,用下载的container启动发布,避免了每次clean后都要重新下载container的问题。不过,这个也是个人喜好的问题了…

修改完pom.xml后,运行maven cargo:start后,即可启动tomcat了。

 

5. 发布到JBossAS 5上

JBossAS5的Maven插件还处于试验阶段,不过用了用,还算好用。不过对于pom的修改复杂一点。

需要注意的一点是,JBossAS对于内存的消耗较大,默认的java内存可能不够用,因此需要引入cargo.jvmargs来手动设置内存大小。具体信息参考http://labs.jboss.com/community/wiki/CargoMavenplugin-raisingPermGenforJBossAS5?decorator=print

同样,通过mvn cargo:start启动后,可以通过浏览器访问网页程序确认发布的正确性。

6. 小结

Cargo提供了非常丰富的功能和配置参数,以上只是我举得一个简单的例子,其中很多参数没有涉及,另外即使涉及了一些参数,具体意义仍需各位参考cargo官方文档。诸位请把这个例子作为cargo的一个helloworld程序,相信可以节省一些时间,我的目的就达到了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值