在开发环境中,有时需要专人负责专门的模块,其他模块不需接触,这就需要将项目拆分,如下

    

fund_demo项目具有三个模块,现将主业务core模块单独提出另建一个项目fund_core,拆分时需要注意相关类的路径在映射文件中要保持正确

    

这就需要当运行fund_demo时也要调用fund_core项目,开发情况下可将fund_core项目作为依赖加入fund_demo,但打包时却不方便,这就需要用到maven来管理

1. 同一工作空间下新建父项目fund_parent,并编辑pom.xml

    <groupId>cn.zang</groupId>
<artifactId>fund_parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 打包方式为pom -->
<packaging>pom</packaging> <!-- 引入子项目 -->
<modules>
<module>../fund_core</module>
<module>../fund_demo</module>
</modules>

2. 编辑子项目的pom.xml

fund_demo:声明父元素,引入fund_core的依赖

<!--声明父元素-->
<parent>
<groupId>cn.zang</groupId>
<artifactId>fund_parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../fund_parent</relativePath>
</parent> <groupId>cn.zang</groupId>
<artifactId>fund_demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>fund</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<!--引入fund_core的依赖-->
<dependency>
<groupId>cn.zang</groupId>
<artifactId>fund_core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
······
</dependencies>

fund_core:声明父元素

<!--声明父元素-->
<parent>
<groupId>cn.zang</groupId>
<artifactId>fund_parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../fund_parent</relativePath>
</parent> <groupId>cn.zang</groupId>
<artifactId>fund_core</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

3. fund_parent项目编译发布

call mvn clean compile
call mvn eclipse:clean
call mvn eclipse:eclipse -Dwtpversion=2.0 -DdownloadSources=true -DdownloadJavadocs=true
pause

4. 在项目中引入父项目时即可自动将两个子项目引入

使用maven拆分项目的更多相关文章

  1. Maven 通过maven对项目进行拆分、聚合(重点)

    对现在已有maven ssh项目进行拆分,拆分思路:将dao层的代码已经配置文件全体提取出来到一个表现上独立的工程中.同样service.action拆分. ssh-parent: 父工程 ssh-d ...

  2. IntelliJ IDEA使用(一):创建maven web项目

    在公司用eclipse开发maven web项目后,慢慢开始明白大家的那句话"受不了eclipse".的确,在开发大型的web项目,尤其是maven构建的项目,eclipse很不友 ...

  3. maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

    maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository. ...

  4. eclipse 创建maven web项目

    参考:http://www.cnblogs.com/hongwz/p/5456616.html eclipse 创建maven web项目

  5. 在Intellij IDEA 下通过Maven新建项目的一些体会

    因为习惯的原因,一直在用jetbrain的IDE,最近的在开发javaEE项目,并尝试用maven来管理依赖,那这中间又出了什么让我不得不写下来的呢 一.先来看看在IDEA下怎么用maven建项目 1 ...

  6. 利用Maven把项目生成jar包供其他项目使用

    每当搭建框架时,第一步就是为系统整理一个接一个的jar包.用多了就开始深思,如何把自己的项目也整成jar包,供他人使用呢? 近期一直在看徐晓斌所著:<Maven实战>.因自己学识不够,只是 ...

  7. Mybatis与Spring整合,使用了maven管理项目,作为初学者觉得不错,转载下来

    转载自:http://www.cnblogs.com/xdp-gacl/p/4271627.html 一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype ...

  8. myeclipse下构建maven web项目

    首先创建一个Maven的Project如下图 我们勾选上Create a simple project (不使用骨架) 这里的Packing 选择 war的形式 由于packing是war包,那么下面 ...

  9. Eclipse 搭建 Maven Web项目

    第一步:安装JDK: 第二步:安装Eclipse: 第三步:安装tomcat7: 第四步:安装maven插件: 4.1 下载maven:http://maven.apache.org/download ...

随机推荐

  1. codeforces 85D D. Sum of Medians Vector的妙用

    D. Sum of Medians Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://codeforces.com/problemset/prob ...

  2. acdream 1725 哗啦啦的小彭玉染色问题 离散化并查集

    哗啦啦的小彭玉染色问题 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acdream.info/problem?pid=1725 Descri ...

  3. SQL Server2008无法修改表结构?

    之前一直用SQL Server2005的数据库,最近升级到2008之后发现修改不了表结构,提示: 根据提示,取消“阻止保存要求重新创建表的更改”后就可以了. 具体操作:SQL Server Manag ...

  4. 使用CefSharp在.Net程序中嵌入Chrome浏览器(二)——参数设置

    在实现了.Net程序中嵌入Chrome浏览器后,下一步的个性化操作就是加入一些设置了,在前面的文章中,我们可以看到在使用Chrome控件前,有如下一个操作: var setting = new Cef ...

  5. 【spring boot】spring boot中使用@RestController不起作用,不返回json,依旧去找访问接口的请求地址对应的页面

    问题描述: spring boot中使用@RestController不起作用,不返回json,依旧去找访问接口的请求地址对应的页面 表现结果: 1>使用postman测试接口,表现为返回是40 ...

  6. [翻译] JFDepthView 给view提供3D景深

    JFDepthView 给view提供3D景深 https://github.com/atljeremy/JFDepthView This is an iOS project for presenti ...

  7. 命令方式启动安卓模拟器(M9)

    H:\Android\M9SDK_windows_1.0\platforms\android-2.3.1>emulator.exe -sysdir H:\Android\M9SDK_window ...

  8. Qt Creator的安装与Qt交叉编译的配置

    Qt Creator 的安装 到Qt官网下载Qt Creator  https://www.qt.io/download-open-source/ 其它旧版本点击Achieve连接下载 或登录http ...

  9. php 获得linux 机器的性能

    <?php $str = shell_exec('more /proc/stat'); $pattern = "/(cpu[0-9]? )[\s]+([0-9]+)[\s]+([0-9 ...

  10. Android -- Vibrator

    Vibrator                                                                                    public c ...