= ''' Maven使用(以新游戏大厅为例) ''' =
命名:[[BR]]
{{{
cn.pconline.项目组
项目名称
版本
}}}
----
添加依赖:[[BR]]
所谓依赖就是开始时候所需要的包[[BR]]
{{{
org.springframework
spring-web
3.0.6.RELEASE
}}}
----
添加中心库:
所谓中心库就是包存放的地方或者是代理的地方
{{{
gamehall
Repository hosting the gamehall
http://192.168.75.11:8080/nexus-webapp-1.9.2.3/content/groups/public
true
never
warn
false
default
}}}
----
添加依赖包时,只需要添加你所需要的那个依赖包就可以了,这个依赖包的相关依赖可以不用加,maven默认会自动帮我们加好
----
添加自己依赖包时,可以上传到本地仓库,也可以上传到nexus,下面是一个例子
{{{
mvn install:install-file -Dfile=fckeditor-java-core-2.6.jar -DgroupId=fckeditor-java-core -DartifactId=fckeditor-core -Dversion=2.6 -Dpackaging=jar -DgeneratePom=true
}}}
当然nexus提供界面操作上传
----
公司内部需要走代理访问外部的,所以在设置的时候也要加上代理
修改setting.xml文件
{{{
pconline
true
http
192.168.11.254
8080
}}}
----
当然一些模块化的结构管理,不同开发环境的设置和插件的使用等等都可以参考Maven的官方网站[http://maven.apache.org/]
=== '''pom文件''' ===
Maven基本所有工作都是对pom.xml文件来进行操作的
----
{{{
false
always
warn
true
never
fail
codehausSnapshots
Codehaus Snapshots
http://snapshots.maven.codehaus.org/maven2
default
}}}
- enabled表示这两个版本是否可用,snapshots是快照版,开发过程中经常使用。releases是发布版,部署上线的时候用
- updatePolicy 提示这个仓库的依赖包是否有更新的
- checksumPolicy 校验需要
- url是远程库的地址
在游戏大厅2里面使用nexus来代理,作为公司内部使用的仓库中心。
----
{{{
}}}
- distributionManagement部署管理
- downloadUrl提供别人下载你项目的url
- repository项目部署的地方
- site项目文件部署的地方
这样就很好的控制项目的部署,当然有很多种方式可以处理这样的问题,可以写一个插件处理,也可以结合hudson使用脚本处理(游戏大厅暂时使用这种方式来处理)。
----