首先了解下maven和svn是什么:

Maven是一个项目的管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目的生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段 中插件的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件的目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。
此外,Maven能够很方便的帮你管理项目报告,生成站点,管理JAR文件,等等。
个人理解:
(1)maven可以实现管理一个项目,它的pom.xml文件标志着这个项目是maven项目。
(2)它可以实现jar包的管理,对jar包的管理是maven自动进行下载的,其中最常用的是maven的中央仓库,之前有介绍过 http://search.maven.org,在这里可以搜索所需要的jar包以及jar包的版本,直接添加到maven的pom文件中。
(3)当一个项目比较复杂的时候,我们可以采用分布式架构,这个时候就需要建立多个工程,而各个工程是具有依赖关系的,这样就需要maven来管理这些工程,最终实现项目的整体运行。可以实现项目的整体构建打包和发布。
(4)maven的工程类型:war 包(即web工程,基于此包的项目,表示是一个web项目)jar包(java工程)pom工程(这是个聚合工程,用来实现各个工程的依赖)
maven在eclipse中的使用:
目前eclipse的最新版本已经自带maven插件,这样就不需要我们进行安装插件了,我们只需要修改maven的仓库就可以,maven的仓库一般以m2来命名,一般存在本机电脑用户的文件中。

在eclipse中的Windows/preference/maven可以查看maven,在这里可以查看maven的仓库地址

当我们在做了多个项目时候积累了项目所需要的jar包时,我们可以直接将maven的本地仓库覆盖,仓库里面存放的是它所依赖的jar包。

在项目目录下,往往会看到一个名为/lib的子目录,那里存放着各类第三方依赖jar文件,如log4j.jar,junit.jar等等。每建立一个项目,你都需要建立这样的一个/lib目录,然后复制一对jar文件,这是很明显的重复。重复永远是噩梦的起点,多个项目不共用相同的jar文件,不仅会造成磁盘资源的浪费,也使得版本的一致性管理变得困难。此外,如果你使用版本管理工具,如SVN(你没有使用版本管理工具?马上试试SVN吧,它能帮你解决很多头疼的问题),你需要将大量的jar文件提交到代码库里,可是版本管理工具在处理二进制文件方面并不出色。

Maven仓库就是放置所有JAR文件(WAR,ZIP,POM等等)的地方,所有Maven项目可以从同一个Maven仓库中获取自己所需要的依赖JAR,这节省了磁盘资源。此外,由于Maven仓库中所有的JAR都有其自己的坐标,该坐标告诉Maven它的组ID,构件ID,版本,打包方式等等,因此Maven项目可以方便的进行依赖版本管理。你也不在需要提交JAR文件到SCM仓库中,你可以建立一个组织层次的Maven仓库,供所有成员使用。

简言之,Maven仓库能帮助我们管理构件(主要是JAR)。

这时候我们可以直接将maven的仓库覆盖掉,变为自己项目所依赖的jar包的。

即将:C:\Users\Administrator\.m2的.m2文件夹覆盖掉。我们来看下这个文件夹下面是什么内容:

我们以后,如果有新的jar包,我们就可以自己创建一个.m2的文件夹,然后覆盖掉maven的本地仓库就可以在项目中使用了。

接下来我们看下svn的使用:

什么是svn呢?

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。

说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的,实现多人开发项目的便利性,程序员可以通过SVN修改代码,其他程序员可以看到修改的内容,实现代码的同步性,每天提交自己的代码,具有实时性。

svn在eclipse中的安装和使用:

安装:在进行svn的安装过程中遇到了些小插曲,我们来具体看下svn:

首先我们需要下载svn的服务器,

打开这个服务器我们可以看到

我们今后项目的上传就是上传到这个服务器上面,这里可以创建分支用户,即多个用户访问这台服务器。

然后在eclipse中安装svn:

这里我们借鉴下:主要有两种方式,一种是覆盖文件,一种是在线安装。这里遇到了版本兼容的问题,就是我们要下载最新的那个svn,跟我们的最新的eclipse兼容。

如果没有安装的请到这里下载安装:http://eclipse.org/downloads/ 

2、下载SVN插件subclipse,安装方法有两种.那种绿色的以link方式安装的方式我在indogo上试了多次就是没成功。 

3、SVN插件下载地址及更新地址,你根据需要选择你需要的版本。现在最新是1.8.x 
Links for 1.8.x Release: 
Eclipse update site URL: http://subclipse.tigris.org/update_1.8.x 
svn插件包下载: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 

Links for 1.6.x Release: 
Eclipse update site URL: http://subclipse.tigris.org/update_1.6.x 
svn插件包下载: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 

Links for 1.4.x Release: 
Eclipse update site URL: http://subclipse.tigris.org/update_1.4.x 
svn插件包下载: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 

4、下载插件包,将插件包复制到Eclipse安装目录。见图 
   
   下载后的插件包目录结构: 

 

将插件包features和plugins目录中的文件分别复制到Eclipse安装目录的features和plugins中。然后重启Eclipse 就好了 



5、通过Eclipse安装,看图 

 





然后一路点Next,就OK了!!

将项目添加到存储库

要将新的项目添加到 Subversion 存储库,请右击该项目(可以在任何 Eclipse 的项目视图或 Navigator 视图),并且从菜单中选择 Team > Share Project。Eclipse 会显示 Share Project 对话框。

从 Eclipse 当前支持的存储库列表中选择 SVN,然后单击 Next。接下来的对话框(参见图 13)让您选择现有存储库位置,或者创建一个新位置。

这样就可以实现项目工程的上传了。

对于提交到svn的项目,我们需要注意,我们只需要提交src的文件和pom.xml的文件,其他的可以忽略。

提交到svn的项目,如果我们下载下来,发现不是maven项目,我们需要转化下:

maven项目上面有个M的图标。

右键工程-configure-convert to maven project

即可。

 
 

淘淘商城基于maven和svn的理解的更多相关文章

  1. (转)淘淘商城系列——使用maven构建工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72669269 开发工具和环境 这里,我统一规范一下淘淘商城的开发工具和环境,如下: Eclip ...

  2. 001淘淘商城项目:项目的Maven工程搭建

    开始一个新的项目,特此记录,资料全部来源于传智播客,感谢. 我们要做一个类似电商的项目.用maven做管理. maven里面主要分为三种工程: 1:pom工程:用在父级工程,聚合工程中 2:war工程 ...

  3. (转)淘淘商城系列——使用maven tomcat插件启动聚合工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72672389 上文我们一起学习了如何使用maven tomcat插件来启动web工程,本文我们 ...

  4. ZZJ_淘淘商城项目:day01(RESTful Web Service、SVN)

    淘淘商城项目是很适合初级Java程序员练习的实战项目,本次复习是另一位张老师教授的课,内容上与之前入老师版taotao商城比较有些新东西加了进来. 因此有必要记录下那些直到现在还可供参考的技术亮点分享 ...

  5. JAVAEE——淘淘商城第一天:电商行业的背景和技术特点,商城的介绍、技术的选型、系统架构和工程搭建

    1. 学习计划 1.电商行业的背景. 2.电商行业的技术特点 3.商城的介绍 a) 常用的名词介绍 b) 系统功能介绍 4.淘淘商城的系统架构 a) 传统架构 b) 分布式架构 c) 基于服务的架构 ...

  6. ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第十三天(非原创)

    文章大纲 一.课程介绍二.SolrCloud介绍与搭建三.工程部署四.参考资料下载五.参考文章   一.课程介绍 一共14天课程(1)第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用 ...

  7. day68_淘淘商城项目_01

    原文:day68_淘淘商城项目_01 课程计划 第一天: 1.电商行业的背景介绍--电子商务 2.淘淘商城的系统架构 a) 功能介绍 b) 架构讲解 3.工程搭建--后台工程 a) 使用maven搭建 ...

  8. day68_淘淘商城项目_01_电商介绍 + 互联网术语 + SOA + 分布式 + 集群介绍 + 环境配置 + 框架搭建_匠心笔记

    课程计划 第一天: 1.电商行业的背景介绍--电子商务 2.淘淘商城的系统架构 a) 功能介绍 b) 架构讲解 3.工程搭建--后台工程 a) 使用maven搭建工程(工程大) b) 使用maven的 ...

  9. 淘淘商城_day11_课堂笔记

    今日大纲 发布前的准备 实施发布 一部分是由我来发布 一部分是由你们来发布 讲解分布式部署架构 测试 功能测试 压力测试 项目实战的准备以及分组 分组 抽取功能 讲解所需要开发的功能 项目部署上线流程 ...

随机推荐

  1. Socket网络编程--FTP客户端

    Socket网络编程--FTP客户端(1)(Windows) 已经好久没有写过博客进行分享了.具体原因,在以后说. 这几天在了解FTP协议,准备任务是写一个FTP客户端程序.直接上干货了. 0.了解F ...

  2. bindService初步了解

    bindService的使用: 当需要调Service里面的方法时,可以用bindService() 首先定义一个类继承于Service,然后配置Manifest.xml文件 public class ...

  3. python学习笔记整理——元组tuple

    Python 文档学习笔记2 数据结构--元组和序列 元组 元组在输出时总是有括号的 元组输入时可能没有括号 元组是不可变的 通过分拆(参阅本节后面的内容)或索引访问(如果是namedtuples,甚 ...

  4. Docker总结(图片打开略慢请知晓)

  5. [Bundling and Minification ] 二、绑定的作用

    本篇接上一篇[Bundling and Minification ] 一.如何绑定 Bundling的作用有二,一是合并文件减少资源请求的个数缩短资源请求的时间.二是自动更新到最新js或者css,当合 ...

  6. “CEPH浅析”系列之八——小结

    最初决定写这些文章的时候,本打算大致记录一下,几千字也就了事了.可是越写越觉得东西多,不说明白总有些不甘心,于是就越写越长,到这儿为止貌似已经有一万七千多字了.除了博士论文之外,应该是没有写过更长的东 ...

  7. 通过javascript在网页端生成zip压缩包并下载

    zip.js是什么 zip.js的github项目地址:http://gildas-lormeau.github.io/zip.js/ 通过zip.js封装一个能在网页端生成zip文件的插件, 直接在 ...

  8. hdu4549 矩阵快速幂 + 欧拉降幂

    R - M斐波那契数列 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit  ...

  9. Java产生随机数

    前言: 每一门程序设计语言基本都具有一个随机函数,而Java当中产生随机数的方式不拘一格.而且其中的Random工具类还有着更深入的应用,但本文仅对比3种产生随机数的方式,就不深入扩展分析其内部工具类 ...

  10. 实现socket非阻塞设置

    刚开始学习,难免有些疏漏之处,请各位多多指教. 程序亲测可以使用.废话不多说. 网络IO模型分为阻塞IO.非阻塞IO.异步IO.IO复用.信号驱动IO. 阻塞IO: 有数据时,直接读:没有数据时,等待 ...