Java maven 多模块工程
利用Maven可以方便的构建Java项目的多模块工程,例如,一个多模块工程包括:公共代码模块、web服务模块、独立java应用模块。
root:
- common_module
- web_module
- jar_module
1. 根项目(root)
根项目用来管理各个子模块,定义公共依赖的版本。这里将根项目继承自spring-boot-starter-parent,便于采用spring-boot默认的依赖版本,
pom文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.fcg.demo</groupId>
<artifactId>multiproject01_root</artifactId>
<version>1.0-SNAPSHOT</version>
<!--定义各个子模块,便于统一编译、打包-->
<modules>
<module>common_module</module>
<module>web_modle</module>
<module>jar_module</module>
</modules>
<!--根项目打包形式,必须为pom-->
<packaging>pom</packaging>
<description>根工程,定义各个模块通用的依赖</description>
<!--properties标签,定义依赖的版本-->
<properties>
<java.version>1.8</java.version>
<fastjson.version>1.2.62</fastjson.version>
<commons_lang3.version>3.9</commons_lang3.version>
<commons_beanutils.version>1.9.4</commons_beanutils.version>
<commons_collections4.verison>4.4</commons_collections4.verison>
<lombok.version>1.18.10</lombok.version>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>${commons_beanutils.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>com