在Eclipse中创建Maven多模块工程的例子
2017-12-01 14:01
369 查看
在Eclipse中创建Maven多模块工程的例子
一、准备
若想在Eclipse里面做这些的话,那么在做这一切前,请确认你是否已经在eclipse里面安装了maven插件。如果没有装插件,那只能通过命令行去做了。好,现在假设已经在Eclipse里面装了maven插件,那么我们一起用Eclipse来创建Maven多模块项目吧!
二、先创建父项目
在Eclipse里面New -> Maven Project;
在弹出界面中选择“Create a simple project”
设置工程的参数,见下图
Group Id: com.example
Artifact Id: multi-modules-demo
Packaging: pom
Name: Multi Modules Demo
点击完成
这样,我们就按常规模版创建了一个Maven工程。我们还需要对这个工程进行修改。
因为,这是一个父项目,不需要有什么源码,那么,我们在Eclipse中将这个工程下的不用的目录都删除,仅留下
pom.xml文件就行了。
三、创建子项目
选中刚建的父项目,在弹出菜单中点击 New -> Maven Module;
如图配置
使用默认的Archetype(默认:GroupId:org.apache.maven.archetypes,Artifact Id:maven-archetype-quickstart)
完成工程配置,见下图
点击完成
这样一个子项目就创建完成了,在文件系统中,子项目会建在父项目的目录中。在父目录中运行
mvn test等命令,所有的子项目都会按顺序执行。
细心一点的人,可能会发现,通过这个步骤创建子项目的同时,会修改父项目的
pom.xml,增加了类似下面的信息:
<modules> <module>module-children1-demo</module> </modules>
这个信息,就是标记有哪些子模块。
重复创建子项目的步骤,可以创建多个子项目。
四、优化配置
虽然上面的步骤,可以完成多模块的创建,但是创建出来的多模块,在一个程序员的眼里,还是挺别扭的,怎么回事呢?对,存在重复。那让我们重构吧。按上面步骤创建的子项目,在
pom.xml中有个
parent节点,所以,他可以继承父项目的相关信息。没错,父子项目中存在继承关系。
在子项目的
pom.xml中,子项目的
groupId和
version一般和父项目相同,那么可以把子项目的这两个参数删除,这样会自动继承父项目的取值。
同样,如果其他的一些属性,所有子项目都是一样的,那么可以上移到父项目中设置,子项目中无需重复设置。比如:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>可以仅在父项目中设置一次。
除了这种情况以外,还有一种情况,就是依赖和插件。依赖和插件的情况是这样,某一个依赖或插件可能会被大部分子项目所使用,但是也可能有些子项目不需要使用,这样使用上述的方式,简简单单地进行继承就不合适了。
Manen提供
dependencyManagement和
pluginManagement两个标签。使用这两个标签,可以在父项目中统一管理依赖和插件的配置参数,比如版本号啥的。而在子项目中,仅需列出需要使用的依赖和插件的
groupId和
artifactId就可以了,其他信息会自动从父项目管理的信息里面获取。
看例子,父项目中:
<dependencyManagement> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.5</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.5</version> </dependency> </dependencies> </dependencyManagement>
在子项目中:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> </dependencies>
四、命令行创建
上面就是在Eclipse里面创建多模块的步骤,和一些优化配置。其中,具体的步骤可以根据实际情况进行适当的修改,比如选择
Archetype时,可以根据需要,选择适当的
Archetype。
上述步骤中的一些环节,也可以先通过命令行来生成雏形,然后再修改
pom.xml来实现。
相关命令为:
mvn archetype:generate -DarchetypeCatalog=internal -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart
工程创建后需要修改
pom.xml.修改方式,可以参考上面说到的内容。
转载地址:http://blog.csdn.net/jueshengtianya/article/details/50276729
出现的问题:
1.建立子工程后,需要将子工程中pom配置中父工程版本修改成父工程的。
2.在src/main/resources中新建文件时出现文件格式异常的情况。解决办法:
(1)右击项目/properties,然后按步骤1,2,3执行
(2)弹出如下所示对话框,单击add
(3)弹出如下对话框,按步骤1(在空行中填上两个“星号”),2操作
(4)弹出如下对话框,单击finish即可
(5)单击ok,一切搞定,这是就显示正常了
注意:要在src/main/resources下新建**
3.在gate-ui中zuul负载均衡中,修改工程名称。mapper中删除掉不需要的mapper函数,且mapper文件路径链接名字需要手动修改,无法自动修改。
相关文章推荐
- 在Eclipse中创建Maven多模块工程的例子[转载]
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- Eclipse下Maven工程多模块继承和聚合的创建
- Eclipse创建Maven多模块工程
- 如何使用eclipse创建Maven工程及其子模块
- eclipse创建多模块maven工程小结
- eclipse创建maven模块工程
- 在Eclipse中创建Maven多模块工程
- Eclipse下Maven工程多模块继承和聚合的创建
- 在Eclipse中如何创建Maven多模块工程