设为首页 收藏本站
查看: 819|回复: 0

[经验分享] [使用心得]maven2之m2eclipse使用手册之七通用容器插件cargo-maven2-plugin

[复制链接]

尚未签到

发表于 2017-2-28 10:15:36 | 显示全部楼层 |阅读模式
  这篇将是最后一篇了本来是打算介绍jboss插件的发现使用该插件则可以运行目前主流所有服务器(以下统称容器),关于m2eclipse中使用插件的介绍,maven2作为一个强大的项目管理,其功能非常之多,我不能逐个逐个去介绍,只是把几个主要的功能简单介绍下,话不多说了,这次带来的一个容器的通用插件cargo-maven2-plugin,这插件可以兼容所有目前主流的服务器如jboss、tomcat、glassfish、jetty等,本章讲以jboss作为介绍,如果想了解其他服务器应用可以到以下网址参考下如何配置:
  Cargo发布Web程序
  这次只是做一个简单的helloworld介绍,由于之前的ssh2项目中采用了hibernate3.5.2的注解形式会导致jboss内部运行错误,所以这次只是以一个简单的webapp作为介绍.使用m2eclipse向导穿件一个Javaee5的webapp即可.如果不懂如何创建的话请看:

[使用心得]maven2之m2eclipse使用手册之六使用Maven2插件创建一个简单的SSH2项目之jetty篇(一)
  使用cargo-maven2-plugin必须要求你本地已经存在一个容器或者一个可以通过网上下载的压缩包的地址,对于使用jboss容器来说 pom.xml的配置如下:



<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.0.2</version>
<configuration>
<container>
<containerId>jboss51x</containerId>
<home>E:\JavaWorkingTools\JBoss\jboss-5.1.0.GA</home>
<log>${project.build.directory}/logs/jboss51x.log</log>
<output>${project.build.directory}/logs/jboss51x.out</output>
<timeout>300000</timeout> <!-- 5 minutes -->
</container>
<configuration>
<type>existing</type>
<home>E:\JavaWorkingTools\JBoss\jboss-5.1.0.GA\server\default\</home>
<properties>
<cargo.servlet.port>8080</cargo.servlet.port>
<cargo.jboss.configuration>default</cargo.jboss.configuration>
<cargo.rmi.port>1099</cargo.rmi.port>
<cargo.logging>high</cargo.logging>
</properties>
</configuration>
<deployer>
<!-- <type>installed</type> -->
<deployables>
<deployable>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<type>war</type>
<location>${project.build.directory}/${project.build.finalName}.${project.packaging}</location>
</deployable>
</deployables>
</deployer>
</configuration>
</plugin>
  标签说明:
  在第一个<configuration>标签中是对该插件的所选择的容器进行配置
  <container>:容器
<containerId>容器的Id如果你是使用jboss5.1的话就则Id为jboss51x,5.0的话则jboss5x 其余如此类推由容器名字+版本号+小版本号(如果有)+x组成的容器Id
  第一个<home>是容器的安装目录或者你可以选择使用

<zipUrlInstaller>标签,对于 <zipUrlInstaller>用法如下:
<zipUrlInstaller>
<url>http://www.caucho.com/download/resin-3.0.9.zip</url>
<installDir>${basedir}/target/install</installDir>
</zipUrlInstaller>
<url>则是容器的下载地址,要求为zip的版本
<installDir>是你需要安装到的目录,因为插件会把下载好的容器然后自动解压保存到安装目录下
<log>:Cargo的工作日志
<output>:容器的工作日志
<timeout>:超时时间
  第二个<configuration>标签是针对当前项目与对所配置的容器进行设置
  <type>类型,可以选择的有standalone, existing,runtime
  第二个<home>:需要将当前项目发布到指定的文件夹,如果是jboss的话需要该文件夹内有字文件夹deploy
  <properties>:对Cargo插件的配置
  <cargo.servlet.port>:访问的端口
  <cargo.jboss.configuration>:对jboss的配置有all与default两种,默认default
  <deployer>:部署者,需要把本项目的组id等信息加入到里面
  <deployables>:可进行多个部署的项目,可以将多个项目同时在一起发布部署,每个新项目为一个<deployable>标签.
  <deployable>:可部署的项目,把对应的maven2项目的<groupId>,<artifactId>,<type>输入则可以,<location>(可选),如果本地已经存在该项目可以加入这个
  对于更多的标签用法请查看:

Reference Guide,Jboss5.1.x
  对于cargo-maven2-plugin插件的命令这里只是介绍两个常用的,其余的可以参考以下地址:
  cargo-maven2-plugin运行命令
  对于不会使用m2eclipse运行maven2的命令的可以请看

[使用心得]maven2之m2eclipse使用手册之六使用Maven2插件创建一个简单的SSH2项目之jetty篇(三)
  cargo:start:一看就知道这个是运行容器的命令,使用命令后会根据home的容器地址或者zipUrlInstaller里面的下载地址,进行运行或者下载安装后运行.运行后如图1
[img]http://onexin.iyunv.com/source/plugin/onexin_bigdata/https://uoyzvw.blu.livefilestore.com/y1muc7cGLj16--K5zjnCVOVTmps3urYKOoNeqsu4cVVbp5Nv_nK2_4d36-z5fjIXb21z_6Ofua255m-91JfJ_bapAczKA-94KngBlUkkzKruhaPVD9He_FBrtaNW7KvFfHzR-p_tGP3mgfpK4ACJA2AOA/image_thumb[1][/img] 图1:运行插件的后台

  输入http://localhost:8080/后会看到如图2的界面,如果看到的话则证明运行成功了
[img]http://onexin.iyunv.com/source/plugin/onexin_bigdata/https://uoyzvw.blu.livefilestore.com/y1mhfoUwHtD2gcInWfJgmlmiqgnfK-o49t67KrJ6SoMqiR2KIz9incsHAkh5bNdbx7fg0w9QwaciZ0W-HXQPeLk2K-Ur-fCVNp6_fpfz06rd9r5buZAJk-5El338u0OQI4B_VYqVlPgEodVLY_05iwBkA/image_thumb[6][/img] 图2:运行成功后的界面

  cargo:deployer-deploy (aliased tocargo:deploy):发布<deployables>标签中所有的项目到指定的目录中,如果容器正在运行的话则根据当前容器的特性进行热部署等其操作.
  发布成功的时候会出现如图3的内容
[img]http://onexin.iyunv.com/source/plugin/onexin_bigdata/https://uoyzvw.blu.livefilestore.com/y1mVkYKe7Jmz7NdEJbGugaesAPQ3D-JCw8pygbNI-mR6eNWCy873FMZl3VSEDgar1VkYP6hm1tT-Ju3Aa3U5R_pnlmxUT4ZEDRJ76ZMWDXGLc_tqmBUaz6tIcDOeXeo6OQ3Qw98G71uWo5m73h4qLgHmA/image_thumb[8][/img] 图3:发布项目

  输入http://localhost:8080/helloworldwebapp/出现如图4:
[img]http://onexin.iyunv.com/source/plugin/onexin_bigdata/https://uoyzvw.blu.livefilestore.com/y1m17-toze3U_1_LIDnwY1qWOTWJC9OGqzFFrR1KEjc7UEgw4cNmoMCUyeTIoCb2gz7CijQORnS-bTOv1LPyeCAZIsqgDHfrYVa4pfKM13dc0_4DnwN60wgvlH_YXmPFNPSMCYps-zQQG50hfi1NY6A8A/image_thumb[12][/img] 图4:helloworld

  关于该通用容器插件的基本入门就到此结束.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-348291-1-1.html 上篇帖子: (转载)Comet:基于 HTTP 长连接的“服务器推”技术 下篇帖子: OSGi系列
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表