远方蔚蓝
一刹那情真,相逢不如不见

文章数量 126

访问次数 199888

运行天数 1437

最近活跃 2024-10-04 23:36:48

进入后台管理系统

Maven多模块项目pom例子


主模块项目st-site-parent:pom
<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>wst.st.site</groupId>
	<artifactId>st-site-parent</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>st-site-parent</name>
	<description>父模块</description>
	<!-- 子工程模块 -->
	<profiles>
		<profile>
			<modules>
				<!-- 公共部分 -->
				<module>st-site-comm-main</module>
				<module>st-site-comm-shiro</module>
				<module>st-site-comm-entity</module>
				<module>st-site-comm-queue</module>
				<!-- 服务提供者 -->
				<module>st-site-web-eureka-provider-main</module>
				<module>st-site-web-eureka-provider-comm</module>
				<module>st-site-web-eureka-provider-blog</module>
				<!-- 服务消费者 -->
				<module>st-site-web-eureka-consumer</module>
			</modules>
		</profile>
	</profiles>
	<properties>
            <!-- 解决springboot升级高版本后pom文件第一行报错Unknown的问题 -->
		<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>
	<!-- dependencies管理的jar包默认被所有的子项目继承 -->
	<!-- dependencyManagement管理jar包,让子项目中引用一个依赖而不用显示的列出版本号。子项目不会自动引入父项目放在dependencyManagement管理的jar包 -->
	
	<dependencies>
		<dependency>
			...
		</dependency
	</dependencies>
	<dependencyManagement>
		<dependencies>
			<dependency>
				...
			</dependency>
		</dependencies>
	</dependencyManagement>
</project>
子模块之一st-site-comm-main:pom
<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>
	<artifactId>st-site-comm-main</artifactId>
	<name>st-site-comm-main</name>
	<description>公共模块</description>
	<url>http://maven.apache.org</url>
	<parent>
		<groupId>wst.st.site</groupId>
		<artifactId>st-site-parent</artifactId>
		<version>0.0.1-SNAPSHOT</version>
		<!-- 父工程pom相对路径 -->
		<relativePath>../pom.xml</relativePath>
	</parent>
</project>
子模块之一st-site-comm-entity:pom
<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>
	<artifactId>st-site-comm-entity</artifactId>
	<name>st-site-comm-entity</name>
	<description>公共模块-实体</description>
	<url>http://maven.apache.org</url>
	<parent>
		<groupId>wst.st.site</groupId>
		<artifactId>st-site-parent</artifactId>
		<version>0.0.1-SNAPSHOT</version>
		<!-- 父工程pom相对路径 -->
		<relativePath>../pom.xml</relativePath>
	</parent>
	
	<dependencies>
		<dependency>
			<groupId>wst.st.site</groupId>
			<artifactId>st-site-comm-main</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
	</dependencies>
</project>
子模块之一st-site-web-eureka-consumer:pom
<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<artifactId>st-site-web-eureka-consumer</artifactId>
	<packaging>war</packaging>
	<name>st-site-web-eureka-consumer</name>
	<description>web模块(服务消费者)</description>
	<url>http://maven.apache.org</url>
	<parent>
		<groupId>wst.st.site</groupId>
		<artifactId>st-site-parent</artifactId>
		<version>0.0.1-SNAPSHOT</version>
		<!-- 父工程pom相对路径 -->
		<relativePath>../pom.xml</relativePath>
	</parent>
	
    <!-- 子模块自己的依赖 -->
	<dependencies>
		<dependency>
			<groupId>wst.st.site</groupId>
			<artifactId>st-site-comm-entity</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
	</dependencies>
	
	<build>
		<finalName>st-site-web-eureka-consumer</finalName>
		<plugins>
			<plugin>
				...
			</plugin>
		</plugins>
	</build>
</project>