1,首先创建一个父类工程 子模块继承父类工程 并在父类工程的pom.xml文件中定义引入的jar及其版本号 子模块可以引用
2 创建api子模块,主要放置SDK
3 创建server 子模块 主要存放配置文件 不包括源代码
创建工程完成
创建支持eclipse的多模块maven项目
通过maven可以创建多个关联模块的项目(Multiple Module Projects)。由一个总的模块,下面包含多个子模块(子模块还可以包含子模块)。这种maven功能能支持大型的项目构建,往往大型项目由很多子模块组成。
以下说明在eclipse下如何创建多模块的maven项目。
创建总的POM
mvn archetype:create -DgroupId=com.easymorse.marshal -DartifactId=multi-modules-demo
创建一个maven项目,然后修改该项目的pom.xml文件,package类型改为pom:
<packaging>pom</packaging>
并且删除src目录。
创建子模块
在总模块目录下,创建子模块,比如web-demo:
mvn archetype:create -DgroupId=com.easymorse.marshal -DartifactId=web-demo
再创建一个比如日志模块:
mvn archetype:create -DgroupId=com.easymorse.marshal -DartifactId=logging-demo
在总pom的pom.xml文件中已经自动加入:
<modules> <module>web-demo</module> <module>logging-demo</module> </modules>
在各子模块的pom.xml文件中也自动加入了:
<parent>
<artifactId>multi-modules-demo</artifactId><groupId>com.easymorse.marshal</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
子模块继承了总POM的package,这里需要修改,web-demo模块覆盖为:
<packaging>war</packaging>
logging-demo模块修改为
<packaging>jar</packaging>
对上级模块的特别设置
需要在上级模块中设置java编译的参数,现在eclipse一般都使用比较新的版本,默认jdk是1.6,而maven默认还是1.4。
<plugin>
<artifactId>maven-compiler-plugin</artifactId><configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
对web子模块的特别设置
web子模块(web-demo)依赖它的日志模块logging-demo。设置pom.xml:
<dependency>
<groupId>com.easymorse.marshal</groupId><artifactId>logging-demo</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
web子模块在生成eclipse项目时,需要wtp支持,需要设置eclipse插件:
<build>
<plugins><plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<wtpmanifest>true</wtpmanifest>
<wtpapplicationxml>true</wtpapplicationxml>
<wtpversion>2.0</wtpversion>
</configuration>
</plugin>
</plugins>
</build>
生成Eclipse项目
在multi-modules-demo项目根目录下:
mvn eclipse:eclipse
然后,通过eclipse的import项目导入,可发现两个项目:
- logging-demo
- web-demo
都导入进来。导入可能会出现错误,主要是因为没有设置maven的类路径变量“M2_REPO”,可以设置这个类变量到maven的本地repository陌路即可。
如果要在eclipse中使用m2eclipse,需要使用:
mvn eclipse:m2eclipse
这样就不需要设置M2_REPO类库变量了。
接下来
接下来可以:
- 通过eclipse配置的tomcat运行web-demo;
- 通过maven的tomcat或者jetty插件运行web-demo(需要配置pom.xml文件);
- 为项目打包便于分发和部署。
源代码的下载
本文源代码见:
http://easymorse.googlecode.com/svn/tags/multi-modules-demo_1.0.0/
或者通过本地下载:
[Download not found]
相关推荐
eclipse创建多模块项目
<groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </pluginManagement> </build> </project> 3.4.3. 将taotao-...
NULL 博文链接:https://zlrzlm7454.iteye.com/blog/2321724
这个工程代码,是在ECLIPSE下面建立的,应用Gradle作为构建工具,建立的一个多模块项目。注意不是Maven下的多模块项目。
eclipse下创建ssm+MySQL+maven多模块项目。此demo用于提供给新手学习使用,如有不妥之处请联系楼主
maven多模块项目,使用eclipse开发工具创建,有意可下载,没有解压密码
第1步-创建一个Maven项目 只需创建一个简单的Maven项目。 添加父项目和启动程序依赖项。 为了能够编译为JavaScript,您需要添加gwt-maven-plugin并添加您的GWT模块名称。 < parent> < groupId>com.github.gwtboot...
构建这个多模块项目 6.6. 运行Web应用 7. 多模块企业级项目 7.1. 简介 7.1.1. 下载本章样例 7.1.2. 多模块企业级项目 7.1.3. 本例中所用的技术 7.2. simple-parent项目 7.3. simple-model模块 7.4. ...
Eclipse引入:右击“项目”→选择属性,在插入的标题栏列表中选择Java Build Path maven中央仓库介绍 < dependency> < groupId>com.github.qrpcode</ groupId> < artifactId>wordgo</ artifactId> < version>...
一、前言最近公司项目准备开始重构,框架选定为 Spring Boot ,本篇主要记录了在 IDEA 中搭建 Spring Boot Maven 多模块项目的过程。二、软件及硬件环境macOS Sierra 10.12.6IntelliJ IDEA 2018.2JDK 1.8Maven 3.2.1...
java班级管理源码Maven 初学者教程 - 28 分钟内的示例 安装 Eclipse 和 Java 课程大纲 我们将使用 ...Maven ...Maven ...Maven ...多模块 Maven 项目。 第 8 步:我们将学习如何创建战争,部署到 tomcat。 运
第6课 使用Maven构建多模块项目(一) 第7课 使用Maven构建多模块项目(二) 第8课 使用Nexus搭建Maven私服 第9课 使用Maven管理新闻系统开发-项目简介 第10课 使用Maven管理新闻系统开发-项目搭建(一) 第11课 ...
②使用【Maven】创建项目 目前不知道使用Eclipse导入该项目,是否可以直接预加载,没有测试过,谨慎谨慎再谨慎!(Eclipse的兼容性较低,建议可以直接尝试做新项目时更换)。如果购买者是因为所学内容有限,还不知道...
项目介绍: 本系统功能包括: 一: 商品模块:商品添加、规格设置,商品上下架等 ...2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行
tycho-eclipse-plugin-原型这个原型将创建一个具有嵌套结构的多模块项目: __artifactId__ : parent pom project | |---__artifactId__.core : eclipse-plugin | |---__artifactId__.feature: eclipse-feature | |--...
在动手创建一个多模块maven Java Web应用程序项目的同时,掌握Maven的核心概念。 - Convention over configuration and the Maven project structure - Maven life cycle phases and goals - The Project Object ...
Foweb框架一个基于Spring + SpringMVC + Mybatis的多模块Maven项目。一个基于Spring + SpringMVC + Mybatis的Maven多模块项目。使用文档两种使用方式:1.直接将项目下载下来,然后在IDE(Eclipse或IDEA)中以maven...