shoppingmall项目:

一.父工程  shoppingmall-parent  (packaging为pom) 此是本项目的顶级工程,所有子工程都应该继承他,主要可承担以下任务:

a.集中定义依赖版本号 如<properties><<junit.version>4.12</junit.version><spring.version>4.1.3.RELEASE</spring.version>/properties>

b.声明各种jar包  此处定义在dependencyManagement中只是声明,还不会去下载jar包到本地仓库中,由子工程按需去配置自己依赖(子工程不需要version了)

如<dependencyManagement><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency></dependencyManagement>

c.集中定义插件

<build><pluginManagement><plugins><plugin></plugin></plugins></pluginManagement></build>

二.通用工程组件 shoppingmall-common (packaging为jar) 此是本项目的一些公共资源 工具类, 使用时会打成jar包 install进仓库 供别的子工程所依赖,继承parent

a.引入自己的依赖 由于继承parent依赖的版本号已经不需要version了

如<dependencies><dependencie><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependencie></dependencies>

三.后台管理工程  shoppingmall-manager (packaging为pom) 此是本项目后台管理工程 是一个聚合工程,他应该包含若干自工程便于后台的统一管理如shoppingmall-pojo  shoppingmall-mapper  shoppingmall-service  shoppingmall-web等,依赖common 继承parent

1.shoppingmall-pojo(packaging为jar) :一般继承manager即可 没什么自己的依赖

2.shoppingmall-mapper(packaging为jar) :依赖于pojo  有自己的依赖如MySQL druid连接池 和 一些持久层框架

3.shoppingmall-service(packaging为jar) :依赖于mapper 也有自己的依赖如spring

4.shoppingmall-web(packaging为war) :依赖于service 也有自己的依赖如jsp servlet等 此工程是后台管理的入口 有web.xml和index.jsp

综上:

继承以下工程:

<parent>

    <groupId>com.ly</groupId>

    <artifactId>shoppingmall-parent</artifactId>

    <version>0.0.1-SNAPSHOT</version>

  </parent>

依赖以下工程:

<dependencies>

  <dependency>

<groupId>com.ly</groupId>

<artifactId>shoppingmall-common</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>

  </dependencies>

聚合以下工程:

<modules>

  <module>shoppingmall-manager-pojo</module>

  <module>shoppingmall-manager-mapper</module>

  <module>shoppingmall-manager-service</module>

  <module>shoppingmall-manager-web</module>

  </modules>

还需要配置如下maven的tomcat插件试运行起来

<build>

  <plugins>

  <plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<configuration>

<port>8080</port>

<path>/</path>

</configuration>

  </plugin>

  </plugins>

  </build>

<<<右击manager---Run As--Maven Build...配置Goals----clean tomcat7:run(当然运行之前该把parent和common这些maven install进仓库)>>>>

四.把以上项目提交到SVN

1.在VisualSVN Server--Repositories右击新建ShoppingMall库(一般包含branches tags trunk三个文件夹) 在Users上右击新建用户

2.在1建立的ShoppingMall右击可以复制该库的url,分别对着parent common manager右击--Team---Share Project---SVN---创建新库位置粘贴复制的url---选择第二个

使用指定的模块名---点击右边浏览输入账号密码后再选择trunk让他们放在trunk文件夹下(不需要提交pojo mapper service 等 已经在聚合工程manager中了)

3.执行完2之后只是会在SVN服务器trunk文件夹下创建三个以项目名为名的文件夹 真正项目内容还没有提交,可在Team Synchronizing操作,需注意如下:

项目中的.settings .classpath .project和target这些文件和目录都可以右击--添加至 svn:ingore(D) 忽略他们与SVN同步,

有时比如在.setting上 右击 添加至svn:ingore(D)是灰色的,有可能是这个项目在SVN还不存在(如那些被聚合的工程 SVN上只有manager文件夹)

此时你可以先提交被聚合工程的src pom.xml这些到SVN 接下来就可以svn:ingore了

4.执行完3之后 全部工程前都有红色双向箭头(本地和SVN时间上操作不一致认为有冲突) 此时选中他们右击--更新---全部变成灰色向右箭头(此时任务本地的要比SVN新)

同意选中他们--提交。。

五.执行完四之后,那些被聚合的工程pojo mapper等还不受SVN直接管控,此时可以把你workspace的工程全部删除后再从SVN检出

1.右击import---SVN--从SVN检出项目--选择位置---选中trunk目录下的三个文件夹--这3个文件夹做为工作空间的多个项目检出

2.此时还是只有三个工程,你可以右击--import--Maven--Existing Maven Projects--Browse--选到工作空间中manager项目目录 系统会自动找到那些带pom的工程--Finish

3.从SVN直接检出的三个还只是普通工程 选中他们 右击 Configure -- Convert to Maven Project.

4.全部变成maven工程了,End。。。。。。。。。。。。。

环境搭建之maven分布式系统的更多相关文章

  1. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  2. Spring MVC 环境搭建(maven+SpringMVC+mybatis+Freemarker)

    Spring MVC 环境搭建(maven+SpringMVC+mybatis+Freemarker) 一.准备工作 1.Eclipse Java EE IDE(4.4.1) 2.JDK 3.Tomc ...

  3. JavaEE开发基于Eclipse的环境搭建以及Maven Web App的创建

    本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...

  4. JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建

    本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...

  5. JEECG环境搭建(Maven版本)-总结Eclipse

    1.安装sql server 数据库: 解决办法: 控制面板→程序和功能→启用或关闭Windows功能 .Net Framework 3.5这一项未被完全选中(应为对勾,如果是方块也不可以) 选中该项 ...

  6. java selenium (三) 环境搭建 基于Maven

    现在Java的大部分项目都是基于Maven,  在Maven项目中使用Selenium2. 非常简单. 首先你需要配置好Maven的环境 可以参考本博客的Maven教程系列,Maven入门教程(一) ...

  7. 自己记录java环境搭建之-maven

    简述: 现需要在Eclipse中配置Maven插件,同时安装maven应用,配置Maven环境变量,建立Maven管理的工程,并用Maven导入Gson包, 编写简易Json输出程序 步骤: 1. 首 ...

  8. Flink开发环境搭建(maven)

    1.下载scala sdk http://www.scala-lang.org/download/ 直接到这里下载sdk,(https://downloads.lightbend.com/scala/ ...

  9. 项目管理利器maven学习笔记(一):maven介绍及环境搭建

    maven介绍 maven下载与环境搭建 http://maven.apache.org/download.cgi# 解压到指定位置,比如我解压到D盘 设置maven环境变量 添加一个变量名,变量值为 ...

随机推荐

  1. JS键盘码值表

    值得注意的是,keypress事件中获取的keycode.which,都是按键对应的ascii值,而不完全对应下面的列表. 将字符转换为ascii值可以用charCodeAt函数. keycode 8 ...

  2. 关于c:\fakepath\的解决办法

    (2014.11.25 最后更新) 一.碎碎念:关于访问本地图片的路径的问题,比较典型的例子就是上传头像.在以往的解决办法中,我们大多是先将图片上传到服务器然后从服务器返回图片,显示在页面上以达到预览 ...

  3. T-SQL语言基础

    1.T-SQL语言 CREATE:创建新对象,包括数据库.表.视图.过程.触发器和函数等常见数据库对象. ALTER:修改已有对象的结构. DROP:用来删除已有的对象.有些对象是无法删除的,因为它们 ...

  4. 学习笔记--【转】Parameter与Attribute的区别&servletContext与ServletConfig区别

    原文链接http://blog.csdn.net/saygoodbyetoyou/article/details/9006001   Parameter与Attribute的区别   request. ...

  5. laravel5.2学习资源

    研究laravel的过程中基本把国内关于laravel的资料给翻了一遍了: 整理了一些中文的资源如下: 一:教程系列 1:https://laravist.com/series/laravel-5-b ...

  6. 使用js判断一个对象是否为空 比如 obj={}

    今天使用到js判断一个对象是否为空,js没有封装好的方法,这里最好的办法就是使用jquery里面的封装好的方法 $.isEmptyObject(obj)

  7. 不让input表单的输入框保存用户输入的历史记录

    如何不让input表单的输入框保存用户输入的历史记录.  有时我们在设计网页时不想让表单保存用户输入历史记录,比如一些隐私数据,或一些冲值卡 <input name="test&quo ...

  8. hiho一下103周 平衡树·Treap

    平衡树·Treap 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Ho:小Hi,我发现我们以前讲过的两个数据结构特别相似. 小Hi:你说的是哪两个啊? 小Ho:就是二 ...

  9. 关于html5

    html5   是用来  将 js  和 css  结合起来 从而实现 各种功能 javascript 用来定义 html5   页面的逻辑 css 来定义 html5 中的显示样式

  10. 最好用的手机编程软件-C4droid

    Q:c4droid是什么? A:c4droid(以下简称c4)是安卓平台上最强大的c/c++ 编译器,你可以在手机上用手机编写自己的C/C++程序,并且可以把程序导出成apk文件. 下载地址:http ...