?在J2EE开发中,当我们的某个ejb的jar包不但可以使用于jboss中,还希望运行在websphere或weblogic中。一个ejb包要发布在不同的j2ee中间件中时有些配置信息往往不一样,比如:这个ejb包中有JPA的配置文件persistence.xml文件。那么,这个文件在jboss中的设置如下:
? ?? ?? ?? ?? ?? ?? ?? ?
?而websphere的设置如下:
?
如果这个ejb的jar包是一个平台的基本模块,当某一个项目使用该平台发布在jboss环境下,另一个项目也使用该平台发布在websphere环境下,这个时候要想用maven管理该怎么办呢?这个时候classifier就发挥作用了。
??? 首先,我们使用maven-jar-plugin或maven-ejb-plugin的classifier属性,将这个模块分别发布为jboss类型的和websphere类型的,下面以maven-ejb-plugin为例配置如下:
org.apache.maven.plugins maven-ejb-plugin 2.3 ${appserver.type活动:慈云数据爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!! 点击查看} 3.0 false true **/*Bean.class **/package.html
?
特别需要注意的是:${appserver.type}
appserver.type是变量:
当发布jboss版本的模块时使用jboss作为变量值.
当发面websphere版本的模块时使用websphere作为变量值.
把分别不同情况生成的包发布到私服中,可以在仓库中看到xxx-jboss.jar和xxx-websphere.jar,如图所示:
当系统要发布在jboss或websphere中间件时,也可以通过在依赖中使用classifier来指定是使用平台模块的jboss版本还是websphere版本,配置如下:
cn.com.pzhsteel.mes mes-ejb ${mes.platform.version} websphere ejb
?这样就可以指定是使用哪个版本的平台模块了。
?
52935797
《classifal,classifief》来自互联网同行内容,若有侵权,请联系我们删除!
还没有评论,来说两句吧...