1.建立父类maven项目dmk

image.png

1.1父模块的pom.xm;

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <!-- 继承说明:这里继承SpringBoot提供的父工程 -->
  7. <parent>
  8. <groupId>org.springframework.boot</groupId>
  9. <artifactId>spring-boot-starter-parent</artifactId>
  10. <version>2.3.1.RELEASE</version>
  11. <relativePath/> <!-- lookup parent from repository -->
  12. </parent>
  13. <!--工程说明-->
  14. <groupId>org.javaboy</groupId>
  15. <artifactId>dmk5</artifactId>
  16. <packaging>pom</packaging>
  17. <version>1.0-SNAPSHOT</version>
  18. <modules>
  19. <module>mm-web</module>
  20. <module>mm-service</module>
  21. <module>mm-mapper</module>
  22. <module>mm-dao</module>
  23. </modules>
  24. <!-- 版本说明:这里统一管理依赖的版本号 此处可加计不加-->
  25. <dependencyManagement>
  26. <dependencies>
  27. <dependency>
  28. <groupId>org.springframework</groupId>
  29. <artifactId>spring-context</artifactId>
  30. <version>5.2.7.RELEASE</version>
  31. <scope>compile</scope>
  32. </dependency>
  33. <dependency>
  34. <groupId>org.javaboy</groupId>
  35. <artifactId>mm-web</artifactId>
  36. <version>1.0-SNAPSHOT</version>
  37. </dependency>
  38. <dependency>
  39. <groupId>org.javaboy</groupId>
  40. <artifactId>mm-service</artifactId>
  41. <version>1.0-SNAPSHOT</version>
  42. </dependency>
  43. <dependency>
  44. <groupId>org.javaboy</groupId>
  45. <artifactId>mm-mapper</artifactId>
  46. <version>1.0-SNAPSHOT</version>
  47. </dependency>
  48. <dependency>
  49. <groupId>org.javaboy</groupId>
  50. <artifactId>mm-dao</artifactId>
  51. <version>1.0-SNAPSHOT</version>
  52. </dependency>
  53. <dependency>
  54. <groupId>org.springframework.boot</groupId>
  55. <artifactId>spring-boot-starter-web</artifactId>
  56. <version>2.3.1.RELEASE</version>
  57. <scope>compile</scope>
  58. </dependency>
  59. <dependency>
  60. <groupId>mysql</groupId>
  61. <artifactId>mysql-connector-java</artifactId>
  62. <version>5.1.42</version>
  63. </dependency>
  64. </dependencies>
  65. </dependencyManagement>
  66. </project>

2.右键单击父模块建立子模块

image.png

2.1web的pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <parent>
  6. <artifactId>dmk5</artifactId>
  7. <groupId>org.javaboy</groupId>
  8. <version>1.0-SNAPSHOT</version>
  9. </parent>
  10. <modelVersion>4.0.0</modelVersion>
  11. <artifactId>mm-web</artifactId>
  12. <!--信息的说明也可以详细点-->
  13. <!--<modelVersion>4.0.0</modelVersion>-->
  14. <!--<groupId>org.javaboy</groupId>-->
  15. <!--<artifactId>mm-web</artifactId>-->
  16. <!--<version>1.0-SNAPSHOT</version>-->
  17. <!--<packaging>jar</packaging>-->
  18. <dependencies>
  19. <!--spring启动文件 ,如果没有此依赖会导致项目无法启动-->
  20. <dependency>
  21. <groupId>org.springframework.boot</groupId>
  22. <artifactId>spring-boot-starter-web</artifactId>
  23. </dependency>
  24. <!--spring boot启动包所需注解的依赖 @SpringBootApplication-->
  25. <dependency>
  26. <groupId>org.springframework.boot</groupId>
  27. <artifactId>spring-boot-autoconfigure</artifactId>
  28. <version>2.3.1.RELEASE</version>
  29. </dependency>
  30. <!--引入service层-->
  31. <dependency>
  32. <groupId>org.javaboy</groupId>
  33. <artifactId>mm-service</artifactId>
  34. <version>1.0-SNAPSHOT</version>
  35. <scope>compile</scope>
  36. </dependency>
  37. <!--连接数据库所需的包-->
  38. <dependency>
  39. <groupId>mysql</groupId>
  40. <artifactId>mysql-connector-java</artifactId>
  41. </dependency>
  42. <dependency>
  43. <groupId>mysql</groupId>
  44. <artifactId>mysql-connector-java</artifactId>
  45. <version>8.0.20</version>
  46. <!--运行时才生去匹配需要什么版本的包-->
  47. <!--<scope>runtime</scope>-->
  48. <!--直接说明需要什么版本的包-->
  49. <!--<version>5.1.47</version>-->
  50. </dependency>
  51. <!--阿里的数据库连接池-->
  52. <dependency>
  53. <groupId>com.alibaba</groupId>
  54. <artifactId>druid-spring-boot-starter</artifactId>
  55. <version>1.1.10</version>
  56. </dependency>
  57. <!--测试类的依赖,测试包的坑见java爬坑-->
  58. <dependency>
  59. <groupId>org.springframework.boot</groupId>
  60. <artifactId>spring-boot-starter-test</artifactId>
  61. <scope>test</scope>
  62. </dependency>
  63. </dependencies>
  64. </project>

2.2service的pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <parent>
  6. <artifactId>dmk5</artifactId>
  7. <groupId>org.javaboy</groupId>
  8. <version>1.0-SNAPSHOT</version>
  9. </parent>
  10. <modelVersion>4.0.0</modelVersion>
  11. <artifactId>mm-service</artifactId>
  12. <!--信息的说明也可以详细点-->
  13. <!--<modelVersion>4.0.0</modelVersion>-->
  14. <!--<groupId>org.javaboy</groupId>-->
  15. <!--<artifactId>mm-service</artifactId>-->
  16. <!--<version>1.0-SNAPSHOT</version>-->
  17. <!--<packaging>jar</packaging>-->
  18. <dependencies>
  19. <!--注解所使用的包-->
  20. <dependency>
  21. <groupId>org.springframework</groupId>
  22. <artifactId>spring-context</artifactId>
  23. <version>5.2.7.RELEASE</version>
  24. </dependency>
  25. <!--引入mapper-->
  26. <dependency>
  27. <groupId>org.javaboy</groupId>
  28. <artifactId>mm-mapper</artifactId>
  29. <version>1.0-SNAPSHOT</version>
  30. <scope>compile</scope>
  31. </dependency>
  32. </dependencies>
  33. </project>

2.3mapper的pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <parent>
  6. <artifactId>dmk5</artifactId>
  7. <groupId>org.javaboy</groupId>
  8. <version>1.0-SNAPSHOT</version>
  9. </parent>
  10. <modelVersion>4.0.0</modelVersion>
  11. <artifactId>mm-mapper</artifactId>
  12. <!--信息的说明也可以详细点-->
  13. <!--<modelVersion>4.0.0</modelVersion>-->
  14. <!--<groupId>org.javaboy</groupId>-->
  15. <!--<artifactId>mm-mapper</artifactId>-->
  16. <!--<version>1.0-SNAPSHOT</version>-->
  17. <!--<packaging>jar</packaging>-->
  18. <dependencies>
  19. <!--mybatis和spring整合使用的包 import org.apache.ibatis.annotations.Mapper; 此处用来使用mapper注解-->
  20. <dependency>
  21. <groupId>org.mybatis.spring.boot</groupId>
  22. <artifactId>mybatis-spring-boot-starter</artifactId>
  23. <version>2.1.1</version>
  24. </dependency>
  25. <!--spring注解所使用的包Component-->
  26. <dependency>
  27. <groupId>org.springframework</groupId>
  28. <artifactId>spring-context</artifactId>
  29. <version>5.2.7.RELEASE</version>
  30. <scope>compile</scope>
  31. </dependency>
  32. <dependency>
  33. <groupId>org.javaboy</groupId>
  34. <artifactId>mm-dao</artifactId>
  35. <version>1.0-SNAPSHOT</version>
  36. <scope>compile</scope>
  37. </dependency>
  38. </dependencies>
  39. </project>

2.4dao的pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <parent>
  6. <artifactId>dmk5</artifactId>
  7. <groupId>org.javaboy</groupId>
  8. <version>1.0-SNAPSHOT</version>
  9. </parent>
  10. <modelVersion>4.0.0</modelVersion>
  11. <artifactId>mm-dao</artifactId>
  12. <!--信息的说明也可以详细点-->
  13. <!--<modelVersion>4.0.0</modelVersion>-->
  14. <!--<groupId>org.javaboy</groupId>-->
  15. <!--<artifactId>mm-dao</artifactId>-->
  16. <!--<version>1.0-SNAPSHOT</version>-->
  17. <!--<packaging>jar</packaging>-->
  18. </project>

2.5启动类编写

在web项目下建立启动类

  1. package org.javaboy.dmk5;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. /**
  5. * @ClassName MmWebApplication
  6. * @Description
  7. * @Author find me
  8. * @Date 2020/7/4 0004 0:23
  9. * @Version 1.0
  10. */
  11. @SpringBootApplication
  12. public class MmWebApplication {
  13. public static void main(String[] args) {
  14. SpringApplication.run(MmWebApplication.class, args);
  15. }
  16. }

2.6打包运行

注意,打包的时候不能直接对web项目进行打包 需要先对dkm5进行打包,然后在对web项目进行打包,否则会失败 在父项目下有的子项目在首次运行clean 和install前应该先运行父项目的clean和install