在工作的时候,大多时候都是用Maven来管理项目,可是一般我们都知道怎么用maven管理工程,却不知道通过Maven自己来建立多模块工程。于是自己抽时间,在网上找些资料,做了起来。
建立简单的Maven模块结构是这样的:
---- mv-parent
|-- pom.xml (pom)
|
|-- mv-xml
| |-- pom.xml (jar)
|
|-- mv-lib
| |-- pom.xml (jar)
|
|-- mv-core
| |-- pom.xml (jar)
|
|-- mv-web
|-- pom.xml (war)
项目工程的依赖关系:mv-core依赖mv-lib,mv-xml;mv-web依赖mv-lib,mv-xm,mv-core
建立整个项目的步骤如下:
1.建立mv-parent工程
new->other->maven->maven project。
注意选择create a simple project
packaging 选择类型pom.
建立完成后,得到项目:
得到 pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.com.dk</groupId> <artifactId>mv-parent</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> </project>
2.建立mv-lib工程.主要用来存放项目jar
new->other->maven->maven Module.
选择module工程
这个mv-lib工程完成,得到
pom.xml.我把commons-lang.jar放进去,作为测试:
<?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> <artifactId>mv-parent</artifactId> <groupId>org.com.dk</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <groupId>org.com.dk</groupId> <artifactId>mv-lib</artifactId> <version>0.0.1-SNAPSHOT</version> <name>mv-lib</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.4</version> </dependency> </dependencies> </project>
3.建立mv-xml工程.主要用来存放项目配置文件
new->other->maven->maven Module.
选择module工程
得到mv-xml工程。
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> <artifactId>mv-parent</artifactId> <groupId>org.com.dk</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <groupId>org.com.dk</groupId> <artifactId>mv-xml</artifactId> <version>0.0.1-SNAPSHOT</version> <name>mv-xml</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
4.建立mv-core工程.主要用来存项目业务代码
new->other->maven->maven Module.
选择module工程
项目完成。不过要注意mv-core依赖mv-lib,mv-xml。这个需要在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>
<artifactId>mv-parent</artifactId>
<groupId>org.com.dk</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>org.com.dk</groupId>
<artifactId>mv-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>mv-core</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.com.dk</groupId>
<artifactId>mv-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.com.dk</groupId>
<artifactId>mv-xml</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>
5.建立mv-web工程.主要用来项目web
建立web工程,可见我的
http://dk05408.iteye.com/blog/2100525这个比较详细
new->other->maven->maven Module.
选择module工程
这一步的选择比较重要:catalog:Internal,下面选择maven-archetype-webapp.如图:
项目建立后: 右击项目,点击Properties->Project Facets
得到web工程,得到如图:
mv-web依赖mv-lib,mv-xml,mv-core。
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> <artifactId>mv-parent</artifactId> <groupId>org.com.dk</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <groupId>org.com.dk</groupId> <artifactId>mv-web</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>mv-web Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.com.dk</groupId> <artifactId>mv-lib</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.com.dk</groupId> <artifactId>mv-xml</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.com.dk</groupId> <artifactId>mv-core</artifactId> <version>${project.version}</version> </dependency> </dependencies> <build> <finalName>mv-web</finalName> </build> </project>
整个工程完成了
最后可以看下mv-parent里的pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.com.dk</groupId> <artifactId>mv-parent</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> <modules> <module>mv-lib</module> <module>mv-xml</module> <module>mv-core</module> <module>mv-web</module> </modules> </project>
你就可以看到mv-parent下面有4个Module。
对mv-parent进行run-as clean install。
看到的部分日志:
------------------------------------------------------- T E S T S ------------------------------------------------------- There are no tests to run. Results : Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] --- maven-war-plugin:2.1.1:war (default-war) @ mv-web --- [INFO] Packaging webapp [INFO] Assembling webapp [mv-web] in [F:\java\workspace\mv-parent\mv-web\target\mv-web] [INFO] Processing war project [INFO] Copying webapp resources [F:\java\workspace\mv-parent\mv-web\src\main\webapp] [INFO] Webapp assembled in [200 msecs] [INFO] Building war: F:\java\workspace\mv-parent\mv-web\target\mv-web.war [WARNING] Warning: selected war files include a WEB-INF/web.xml which will be ignored (webxml attribute is missing from war task, or ignoreWebxml attribute is specified as 'true') [INFO] [INFO] --- maven-install-plugin:2.3.1:install (default-install) @ mv-web --- [INFO] Installing F:\java\workspace\mv-parent\mv-web\target\mv-web.war to C:\Users\dk\.m2\repository\org\com\dk\mv-web\0.0.1-SNAPSHOT\mv-web-0.0.1-SNAPSHOT.war [INFO] Installing F:\java\workspace\mv-parent\mv-web\pom.xml to C:\Users\dk\.m2\repository\org\com\dk\mv-web\0.0.1-SNAPSHOT\mv-web-0.0.1-SNAPSHOT.pom [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] mv-parent ......................................... SUCCESS [0.273s] [INFO] mv-lib ............................................ SUCCESS [1.860s] [INFO] mv-xml ............................................ SUCCESS [1.017s] [INFO] mv-core ........................................... SUCCESS [0.986s] [INFO] mv-web Maven Webapp ............................... SUCCESS [1.665s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 5.944s [INFO] Finished at: Sat Aug 09 11:56:38 CST 2014 [INFO] Final Memory: 12M/32M [INFO] ------------------------------------------------------------------------
可以得到最后的工程
mv-parent工程
mv-web工程:
项目完成。
这样后面你就可以向里面添加jar,xml等,就可以丰富你的工程。
相关推荐
创建一个多模块项目的第一步是建立一个父工程,它的`packaging`类型设置为`pom`。在Eclipse中,通过`New > Other > Maven Project`开始此过程。在配置过程中,选择"Create a simple project",然后填写必要的信息:...
快速入门部分包括了从源代码取出到Maven构建、生成Eclipse工程、导入模块到Eclipse、运行GeoServer和访问首页等步骤。 ### 结语 《GeoServer开发手册系列(中文)》是GeoServer在中国地区推广和应用的重要参考资料...
在子模块之间建立依赖关系,确保构建顺序正确。 4. **运行多模块项目** 通过在主项目的根目录下执行`gradlew bootRun`命令,Gradle会自动处理所有子模块的构建和依赖关系。 **五、持续集成与发布** Gradle支持...
书中可能包括版本控制系统(如Git)、项目管理工具(如JIRA)、自动化构建工具(如Maven)、集成开发环境(如Eclipse或IntelliJ IDEA)、自动化测试框架(如JUnit或Selenium)以及文档生成工具(如Doxygen)等。...
导入RuoYi工程至Eclipse的步骤非常简单。在Eclipse中选择`Import...`,然后选择RuoYi项目,最后点击`Finish`。这样,RuoYi的源代码就会显示在Eclipse的工作区中,你可以开始进行开发。 运行RuoYi系统前,需要进行...
大多数现代Java IDE,如Eclipse、IntelliJ IDEA,都集成了Maven支持,使得在IDE内管理Maven项目更加方便。 通过学习Maven的基础知识,Java全栈工程师能更高效地管理项目,提高开发效率,降低维护成本。掌握Maven,...
- **配置 Maven**:在 `Window -> Preferences -> Maven -> Installations` 页面设置已安装的 Maven 路径,确保 Eclipse 可以识别并使用 Maven。 - **配置 Maven 仓库路径**:在 `Window -> Preferences -> Maven ...
此外,系统支持多模块的maven项目结构,具备良好的扩展性和可维护性。 综上所述,银行维修系统后台子系统是一个综合性的管理工具,涵盖了从维修人员到机构、从订单到库存的全面管理,旨在通过信息化手段提升银行...
软件工程实践中涉及的工具种类繁多,例如版本控制系统(如Git、SVN)、集成开发环境(如Eclipse、IntelliJ IDEA)、自动化构建工具(如Jenkins、Maven)、测试工具(如JUnit、Selenium)等。掌握这些工具的使用,...
这包括模块划分、类的设计、接口的定义等,帮助学生建立起面向对象的思维方式。 其次,课程会深入讲解Java核心技术,如异常处理、多线程、网络编程、I/O流、集合框架、数据库操作等。通过这些实践性强的课题,学生...
在Eclipse环境中,开发者可以利用JUnit进行单元测试,确保每个模块的功能正确无误。同时,通过Maven或Gradle等构建工具管理项目的依赖,保证所有库文件的正确引入和版本兼容性。 总的来说,“学生信息管理系统”是...
对于初学者来说,建立第一个Spring工程是学习和理解这个框架的基础。 在描述中提到的“博文链接:https://hsiunkao.iteye.com/blog/2025194”,这是一个指向特定博客文章的链接,该文章可能详细介绍了创建第一个...
这包括但不限于版本控制系统(如Git)、集成开发环境(IDE,如Eclipse或Visual Studio)、构建工具(如Maven或Gradle)等。 3. **国家标准文档参考:** 遵循国家标准文档可以确保软件开发的规范性和一致性,提升软件...
综上,软件架构实验室和软件工程实训室的建立是一个系统性的工程,涉及硬件设备、软件工具、教学资源和管理机制等多个层面。在竞争性谈判文件中,必须全面考虑这些因素,以确保项目能够成功落地,为培养高素质的软件...
Spring还提供了大量的模块,如Spring JDBC、Spring ORM、Spring MVC等,可以用于数据库操作、Web开发等多个领域。 2. **MyBatis框架**:MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。...
7. **Maven或Sbt构建工具**:WVLet可能使用Maven或Sbt进行项目构建,学习这两种工具的使用方法及其配置文件的结构。 8. **单元测试和集成测试**:通过WVLet的测试模块,了解如何编写和执行测试用例,确保代码的质量...
实训内容涵盖了软件工程的实践应用、Bug管理流程、面向对象分析与设计、数据库设计与实施、Web应用开发、数据库操作和系统构建等多个方面。特别是,通过对Bug管理系统的需求分析,可以了解到软件服务在软件生命周期...