Maven+eclipse+svn项目构建

原创 2007年09月29日 16:48:00
    maven对大多数人来说应该只是听过而没有真正的了解过,我也今天才找了些资料试验了一下,发现确实对于项目管理来说是一个难得的好工具。简单来说,maven就是一个基于命令行可以对项目整个生命周期—构建、测试、资源管理、文档、发布等一系列过程,进行管理的工具,之所以强调是命令行是以为对于一个通用的项目构建工具是不应该依赖于IDE和平台的,和ant是相似的。
    与ant的比较:可以简单的理解为ant的升级换代版本,思想上从ant上完全的脱离出来,少了配置文件,只要安装后运行命令就可以进行构建,配置文件就只有一个pom.xml,简约并不意味着简单,maven提供了比ant更强大的功能,其中我最中意的就是包的依赖管理机制—当你构建项目时,maven自动从网站上下载需要的依赖包。maven的功能有待挖掘,运用好了个中好处远远超乎想像。
    接下来,运用maven+eclipse+svn构建一个示例项目:
1、工具:环境ubuntu7.10
a)mavenhttp://maven.apache.org/download.html
b)M2eclipse--在线安装http://m2eclipse.codehaus.org/update/
c)Eclipse不用说了
d)Subeclipse版本控制的得力工具
e)mylyn不是必须的,任务驱动编程工具
2、安装:
a)maven安装在ubuntu上,直接下载包解压到/opt目录,
设置路径
 sudo gedit /etc/environment
将/opt/maven/bin添加到路径中
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/maven/bin"
b)安装eclipse的插件
3、构建项目:
a)现在我们要构建一个主项目,项目底下有两个子项目
jsf
   |-jsf.core
   |-jsf.web
b)先构建主项目:
工作目录为/home/linq/research/jsf/
mvn archetype:create -DgroupId=linq.jsf -DartifactId=jsf
我们要将这个目录设置为主目录,将生成的src目录删除,修改pom.xml
<packaging>pom</packaging>
c)构建子项目:项目又core核心组件,和web工程组成
i.cd jsf
ii.构建普通java jar项目
iii.mvn archetype:create -DgroupId=linq.jsf.core -DartifactId=jsf-core
iv.构建web项目(注意红色字体)
v.mvn archetype:create -DgroupId=linq.jsf.web -DartifactId=jsf-web -DarchetypeArtifactId=maven-archetype-webapp
d)查看各个项目的pom.xml文件,可以看出各个子项目都在主项目的控制控制下,可以通过主项目发布打包项目
e)创建eclipse项目属性
i.cd jsr-core
ii.mvn eclipse:eclipse
iii.创建eclipse web属性
iv.cd ../jsf-web
v.mvn eclipse:eclipse -DdownloadSource=true -Dwtpversion=1.0
f)使用eclipse import工程

g) 可以是使用菜单命令添加依赖包

h)
    查询依赖包,选择后即可以自动将包加载到项目中


i)
    使用自带的命令就可以将项目构建发布
注意事项:由于一些依赖包授权的关系,有些需要手工添加,比如jta的包,需要从sun上下载jta-1_0_1B-classes.zip,然后解压通过命令mvn install:install-file -Dfile=/home/linq/temp/jta-1_0_1B-classes.zip -DgroupId=javax.transation -DartifactId=jta -Dversion=1.0.1B -Dpackaging=jar
创建jta的包到mvn的库中

在eclipse中使用maven工具构建项目

maven确实是一个很不错的工具,以前没怎么用过,只知道是用作管理jar包的,感觉没啥用,但是通过简单的了解了一番之后,就越来越喜欢上了。特别是在eclipse4集成了maven之后,创建项目什么的就...
  • hu1991die
  • hu1991die
  • 2015年09月30日 11:20
  • 1237

关于MAVEN子父工程上传SVN以及从SVN检出过程简介

首先 在版本管理中,共享是一个含义不明的意思。 其次,如果你需要通过SVN来进行MAVEN工程的版本管理,如何组织目录结构,我觉得取决于你自己工程的目录结构。一般来说,如果你的父项目是根树的目录层次...
  • qq_38243970
  • qq_38243970
  • 2017年06月21日 11:56
  • 1286

本地导入的项目或从svn上导入的项目不是maven结构,且不能添加进tomcat部署问题的解决

有时候,从别人给的项目,或者直接从svn上check的项目,导入myeclipse后并没有想象中的那么顺利,添加进tomcat,启动。甚至会出现以下问题 1.在myeclipse的tomcat里根...
  • b452608
  • b452608
  • 2015年11月16日 15:29
  • 2828

Eclipse luna + Maven 3.2.5 +JDK 1.7 +Tomcat 7.0 从SVN下载maven项目及其构建、运行(2015.7.20)

2015.7.20     阴天     星期一     今天,正式开始在新公司的项目。      问过可爱的CPF总监,公司项目使用maven继续管理的,OK,话不多说,开始准备项目的环境配置。  ...
  • white_hands
  • white_hands
  • 2015年07月20日 13:49
  • 799

Eclipse中从svn中检出maven项目

相信很多初学者都遇到过Eclipse中从SVN检出Maven项目之后看到的目录结构并不是Maven目录结构;或者只能先用SVN将Maven项目签入到本地,然后再用Eclipse导入Maven项目,但是...
  • Jay_1989
  • Jay_1989
  • 2016年11月03日 16:18
  • 9777

Eclipse中从svn中检出maven项目

相信很多初学者都遇到过Eclipse中从SVN检出Maven项目之后看到的目录结构并不是Maven目录结构;或者只能先用SVN将Maven项目签入到本地,然后再用Eclipse导入Maven项目,但是...
  • java_cainiao2016
  • java_cainiao2016
  • 2017年08月01日 16:30
  • 227

Eclipse使用SVN(subclipse)同步Maven项目的小技巧

先介绍一下环境:Eclipse 3.6,subclipse 1.8.x,M2Eclipse最新版 在使用Subclipse同步SVN上的项目时,总是会出现以下情况:明明svn和本地项目都clean过...
  • zhu19774279
  • zhu19774279
  • 2013年02月01日 16:49
  • 2802

eclipse svn下载并转为maven项目

第一步:从svn导出,导出时导出为Java项目 第二步:将Java项目转换为maven项目 第三步:删除eclipse中刚刚新建的Java项目(不要删除本地源码) 第四步:新建maven项目,选择刚刚...
  • luoxiabo_showsup
  • luoxiabo_showsup
  • 2016年10月09日 16:06
  • 1666

eclipse导入SVN上的Maven多模块项目

一、SVN上Maven多模块项目结构 使用eclipse导入SVN上的Maven多模块项目 Maven多模块项目所在SVN目录 二、eclipse通过SVN导入到工作空间 工作空间位于...
  • P397226804
  • P397226804
  • 2017年07月06日 19:44
  • 248

Eclipse 从SVN插件检出的maven项目都为文件夹

问题1:svn检出的maven项目,src下面的包都为文件夹? 1.如图所示 2.解决方案 (1)右键项目,选择configure——》convert  to  maven projec...
  • Recters
  • Recters
  • 2017年11月28日 14:11
  • 160
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Maven+eclipse+svn项目构建
举报原因:
原因补充:

(最多只允许输入30个字)