首页 > 其他 > 详细

7 Maven环境下构建多模块项目

时间:2021-04-02 12:40:15      阅读:23      评论:0      收藏:0      [点我收藏+]

使用maven 提供的多模块构建的特性完成maven 环境下多个模块的项目的管理与构建。

这里以四个模块为例来搭建项目,以达到通俗易懂的初衷
?
模块 maven_parent —– 基模块,就是常说的parent (pom)
?
模块 maven_dao —– 数据库的访问层,例如jdbc操作(jar)
?
模块 maven_service —– 项目的业务逻辑层 (jar)
?
模块 maven_controller —– 用来接收请求,响应数据 (war)

7.1 创建 maven_parent 项目

  1. 选择 File —> Settings —> Project

技术分享图片

  1. 设置 GroupId 和 ArtifactId

技术分享图片

  1. 设置项目名称及工作空间

技术分享图片

7.2 创建 maven_dao 模块

  1. 选择项目maven_parent,右键选择 New ,选择Module

技术分享图片

  1. 选择Maven项目的模板(普通 Java 项目)

技术分享图片

  1. 设置子模块的的 ArtifactId

技术分享图片

  1. 设置Maven的配置

技术分享图片

  1. 设置子模块的名称及存放位置

技术分享图片

7.3 创建 maven_service 模块

创建 maven_service 模块的步骤与 maven_dao模块一致。

 

7.4 建 maven_controller 模块

创建 maven_service 模块的步骤与 maven_dao模块基本一致,只需要将第一步选择Maven模板设置为web项目即可。(模板类型:maven-archetype-webapp)

 

模块全部创建完毕后,效果如下:

技术分享图片

7.5 修改模块的配置

  • 设置 JDK 版本

  • 单元测试 JUnit版本

  • 删除多余的配置

7.6 设置模块之间的依赖

7.6.1 maven_dao

  1. 新建包

技术分享图片

  1. 在包中创建 UserDao类

技术分享图片

技术分享图片

  1. 在类中添加方法

package com.xxxx.dao;
?
public class UserDao {
?
public static void testDao() {
System.out.println("UserDao Test...");
}
}

7.6.2 maven_service

  1. 添加maven_dao的依赖

<!-- 加入maven_dao模块的依赖 -->
<dependency>
<groupId>com.xxxx</groupId>
<artifactId>maven_dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
  1. 在项目中添加UserService类,并添加方法

package com.xxxx.service;
?
import com.xxxx.dao.UserDao;
?
public class UserService {
?
public static void testService() {
System.out.println("UserService Test...");
// 调用UserDao的方法
UserDao.testDao();
}
}

7.6.3 maven_controller

  1. 添加 maven_service 模块的依赖

<!-- 加入maven_service模块的依赖 -->
<dependency>
<groupId>com.xxxx</groupId>
<artifactId>maven_service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
  1. 添加Servlet的依赖

<!-- Servlet的依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
  1. 新建 Java 类,继承 HttpServlet 类,并重写 service方法

package com.xxxx.controller;
import com.xxxx.service.UserService;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
?
@WebServlet("/user")
public class UserServlet extends HttpServlet {
?
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws
ServletException, IOException {
System.out.println("UserServlet Test...");
// 调用UserService层的方法
UserService.testService();
}
}
  1. 添加Tomcat插件

<!-- 添加插件 -->
<plugins>
<!-- tomcat7插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<!-- <port>8080</port> -->
<path>/web</path>
<uriEncoding>UTF-8</uriEncoding>
<server>tomcat7</server>
</configuration>
</plugin>
</plugins>
  1. 启动项目

技术分享图片

  1. 访问项目 访问地址: http://localhost:8080/web/user 访问结果:

技术分享图片

  1. 如果启动失败,请先将父项目 install

技术分享图片

注:如果父项目 install 失败,则先将所有子模块 install 成功后,再 install 父项目。

7 Maven环境下构建多模块项目

原文:https://www.cnblogs.com/weicunqi/p/14609227.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!