mvn多模块实例
来源:互联网 发布:获取数据失败怎么办 编辑:程序博客网 时间:2024/06/06 01:12
1.首先建一个maven项目
mvn archetype:create -DgroupId=com.emailsys -DartifactId=platform
修改pom文件,将<package>改为<packaging>pom</packaging>
接着删除src文件
2.创建子模块
mvn archetype:create -DgroupId=com.emailsys -DartifactId=entity
可以看见platform文件夹下的pom文件中多了一个:
<modules>
<module>entity</module>
</modules>
这表示这个里面有模块entity,模块创建成功;
同样的,可以创建:
mvn archetype:create -DgroupId=com.emailsys -DartifactId=service
.................................................................................................uitl
最后mvn eclipse:eclipse
注意:为了防止依赖的包出现问题,一般都用
dependencyManagement
Maven 使用dependencyManagement 元素来提供了一种管理依赖版本号的方式。通常会在一个组织或者项目的最顶层的父POM 中看到dependencyManagement 元素。使用pom.xml 中的dependencyManagement 元素能让所有在子项目中引用一个依赖而不用显式的列出版本号。Maven 会沿着父子层次向上走,直到找到一个拥有dependencyManagement 元素的项目,然后它就会使用在这个dependencyManagement 元素中指定的版本号。
例如在父项目里:
<dependencyManagement><dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.2</version></dependency>...<dependencies></dependencyManagement>
然后在子项目里就可以添加mysql-connector时可以不指定版本号,例如:
<dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency></dependencies>
相对于dependencyManagement,所有声明在dependencies里的依赖都会自动引入,并默认被所有的子项目继承。
pluginManagement
是一个道理另外就是依赖,其实可以依赖,项目和项目之间的依赖。比如controller依赖entity。
这时就可以用maven进行操作。
如:
controller的pom.xml
<?xml version="1.0"?><project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.emailsys</groupId> <artifactId>platform2</artifactId> <version>1.0-SNAPSHOT</version> </parent> <groupId>com.emailsys</groupId> <artifactId>controller</artifactId> <version>1.0-SNAPSHOT</version> <name>controller</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies><dependency> <groupId>com.emailsys</groupId> <artifactId>entity</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies></project>
看dependency
依赖entity。
再看controller中引用:
注意,controller中是没有user这个模型的。
而entity中才有。
这时controller中的代码:
public static void main(String[] args) {// TODO Auto-generated method stubUser user = new User();user.setName("xiaoming");System.out.println(user.getName());}运行起来没有问题。这就是依赖的好处。
0 0
- mvn多模块实例
- mvn 多模块
- 用mvn generate命令行创建多模块Web应用骨架
- mvn导入多模块项目的时候子模块不能合并到父模块中
- mvn
- MVN
- mvn
- mvn
- mvn
- mvn
- mvn
- mvn
- mvn
- 模块实例
- mvn下多jetty运行
- struts 多模块开发实例及配置
- Maven多模块布局实例详解
- Maven多模块布局实例详解
- 我对Spring的理解。
- UITableView学习笔记
- Linux LD_LIBRARY_PATH学习
- java类的定义以及参数传递
- unity 3d--抽象类
- mvn多模块实例
- BCB中的TButton
- 大学生职业计划规划书
- 浅谈C++中的编译
- Android代码命名规范大全
- spring原理
- unity3d--脚本入门
- Spring事务管理
- unity----脚本入门