maven2和公司现有开发环境配置说明_第1页
maven2和公司现有开发环境配置说明_第2页
maven2和公司现有开发环境配置说明_第3页
maven2和公司现有开发环境配置说明_第4页
maven2和公司现有开发环境配置说明_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Maven2和现有公司开发模式的融合文档 Maven2作为一种信息的工程管理方式,已经约来越多的被各大公司、及开源 组织所应用,为了把这种新的模式融合到我公司现有的管理模式中来,我们把其工 程管理、开发模式和我们现有的模式进行对比,和参考,为大家提供一种新的工程 管理途径。 目录结构 Maven2的目录结构 Maven2 Directory 目录 二级目录 三级目录 四级目录 说明 pom.xml Maven2 的项目设置文件 src/ 源码目录 main/ 项目主体目录根 java/ 源代码目录 resources/ 所需资源目录 filters/ 资源过滤文件目录 assemby/ Assembly descriptors config/ 配置文件根目录 webapp/ web 应用目录 WEB-INF/ WEB-INF 目录 test/ 项目测试目录根 java/ 测试代码目录 resources/ 测试所需资源目录 filters/ 测试资源过滤文件目录 site/ 与site 相关的资源目录 target/ 输出目录根 classes/ 项目主体输出目录 test_classes/ 项目测试输出目录 site/ 项目site 输出目录 公司现有项目目录 目录结构 目录 二级目录 三级目录 四级目录 说明 build.xml Ant编译文件 doc 文档类文件目录 src 源码目录 java 源代码目录 resources 所需资源目录 war Web工程目录 两者对应关系 1、Build.xml对应的文件pom.xml,两个配置文件的功能都是工程管理和打包编译 pom.xml更侧重工程的管理,其中jar的管理对我公司现有情况非常有帮助 2、src目录 src/java目录对应maven中的src/main/java目录 src/resources目录对应maven中的src/main/resources目录 另外补充,现有的一些hibernate的配置文件,可以放在maven目录的src/main/resour ces/或者其他配置文件的目录 3、War 目录 war目录对应maven中的src/main/webapp 目录,但这个目录并不存在 jar包 4、编译 现有编译方式,有两种:一种是在tomcat 的server.xml 中把webapp 的目录指定到war 下;另外一种是在eclipse 中配置tomcat ,把工程设置成web工程。 在maven下,对于第一种方式比较简便,直接把指定到war目录,换成target/site目 录;第二种可以用jetty集成maven的方式替代,也可以把target/site设置成web工程 的webapp目录。 5、打包 在现有方式下,我们用ant的build.xml进行打包,在maven下,我们用assembly下配 置相应的打包文件进行打包。 Maven私服 Maven对我公司目前来讲,最大的优势就是解决了jar包的混乱问题,其一方面 可以maven直接对jar进行独立管理,也可以借助maven的私服进行管理,这样既可 以保存对公网上的jar包本地化,也可以把公司自己的内部jar进行发布管理,这里 简单介绍。以下是从网络上下载的一篇文章,供参考 1. 首先下载Nexus 从官网/download.html下载下载最新版本,因为是在window s上安装,因此下载的是zip版本,大小大概是16m。 2. 安装 简单解压缩下载的zip包到安装目录就可以了。 可执行文件在%nexus安装目录%nexus-webapp-1.0.0binjswwindows-x86- 32下: InstallNexus.bat/UninstallNexus.bat是安装/ 卸载nexus为windows service,如果需要设置nexus为开机自动启动就可以安装为windows service然后设置启动方式为自动。 Nexus.bat是直接在命令行中启动Nexus,如果不想安装 Nexus为windows service,可以用这个文件来手工控制 Nexus的启动退出。 注意:我们这里用的不是独立版本,而是直接用的一个war发布到tomat下,发布方式不一 样,具体功能都是完全一样的 3. 配置nexus 首先登录,默认地址http:/localhost:8081/nexus/,默认用户名密码为admin/admin12 3. 最重要的一件事情就是开启远程索引下载,索引这个功能实在是太好用了。 nexus默认是关闭远程索引下载功能的,主要是担心会造成对服务器的巨大负担,需要我们手 工开启。 开启的方式: 点击Administration菜单下面的Repositories,将这三个仓库Apache Snapshots,Codehaus Snapshots,Maven Central的Download Remote Indexes修改为true。然后在这三个仓库上分别右键,选择Re- index,这样 Nexus就会去下载远程的索引文件。 4. 配置maven 要让maven使用nexus作为私服,需要做一些设置,使用和原来设置artifactory相似的方法 。修改/.m2/settings.xml. 增加nexus的profile: nexus nexus local private nexus http:/localhost:8081/nexus/content/groups/public true false nexus local private nexus http:/localhost:8081/nexus/content/groups/public-snapshots false true nexus local private nexus http:/localhost:8081/nexus/content/groups/public true false nexus local private nexus http:/localhost:8081/nexus/content/groups/public-snapshots false true 修改activeProfiles 为: nexus 5. 为nexus增加Artifact 有些特殊的Artifact 无法从maven官网仓库中下载,比如sun 的一些包,只好自己自行下载后添 加到私服中。 在nexus中我选择将这些Artifact上传到默认安装就存在的仓库 3rd Party中,右击仓库名,选择Upload Artifact。 6. 在eclipse中使用索引功能 原来试过,使用artifactory私服也可以使用 Artifact的索引功能,但是由于不知道怎么设置远程 仓库的index,我只会设置 当前artifactory私服已有的Artifact的索引,对于还没有导入到artifactory私服的Artifact就没有办 法索引了,很不方便, 毕竟刚开始使用maven时,所有用到的Artifact都是本地和私服没有而需要到远程仓库取的。 nexus中可以很方便的得到远程仓库的 Artifact的索引,在上面 “3. 配置nexus” 就介绍过。下面介绍如何在eclispe 里面 设置和使用索引功能: 1) 打开Maven Indexes 的eclispe view 在eclispe中选择window - show view - other . - Maven - Maven Indexes 2) 添加nexus的index 右键菜单中选“add index“, 在弹出的“Add Respository index“窗口中填入: Repository URL: http:/localhost:8081/nexus/content/groups/public Repository Id: nexus Index Update URL: 放空,暂时还不知道该怎么填 加入后eclispe会自动load 一次 index信息,然后就可以在新加入的 index下可以拉出极大数量的Ar tifact信息。 3) 测试一下使用 找个pom.xml文件,右键 - Add Dependency, 然后填入一个关键词,比如我填入mina,马上填出和mina相关的一些 选择,我找到apache mina,双击最新一个版本。会自动在pom.xml 文件中增加以下内容: org.apache.directory.mina mina-core 0.9.5 然后Maven 自动下载jar 包,再将jar 包加入项目的build path,全程自动化处理,真是爽啊。 7. 为nexus增加新的proxy repository 方法很简单,administration - Repositories - add - proxy,填写后保存即可。但是要注意,nexus 不会自动将新加入的 repository添加到group中,而 我们一般喜欢直接使用默认的“public repository“ group, 比如前面我在maven的profile中就只设置了这一个URL: http:/localhost:8081/nexus/content/groups/public。因此需要手工修改“public repository“ group的设置,将刚才添加的proxy repository加到组中。 推荐的repository 有: 1) jboss /maven2/ 2) sun /maven/2/ 3)k-int /maven2/ 加入这个纯粹是因为它有sun的jmxri/jmxtools这些Artifact,强烈鄙视sun,自己的官方repository 居然没有。 4)sonatype /content/groups/public/ 8. 总结 很明显,nexus无论是在界面,功能,操作上,都比 artifactory强大的多。 因此推荐大家使用nexus替代 artifactory作为maven 私服。 参考:/post/Using_Nexus.asp Maven的常用操作 1、常用命令: 创建Maven 项目:mvn archetype:create 编译源代码:mvn compile 编译测试代码:mvn test-compile 运行测试:mvn test 产生site:mvn site 打包:mvn package 在本地Repository中安装jar:mvn install 清除产生的项目:mvn clean 2、Eclips

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论