Maven は複数環境のパッケージ化を実装します

Maven は複数環境のパッケージ化を実装します

袖をまくってやってみましょう:

ディレクトリは次のとおりです。
異なるディレクトリは、それらを区別するために独自のファイルとコンテンツを書き込みます。
ここに画像の説明を挿入します

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>com.yfc.test.package</groupId>
	<artifactId>test.package</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>

	<profiles>
		<profile>
			<id>prod</id>
			<properties>
				<package.environment>prod</package.environment>
			</properties>
		</profile>
		<profile>
			<id>dev</id>
			<properties>
				<package.environment>dev</package.environment>
			</properties>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
		</profile>
		<profile>
			<id>qa</id>
			<properties>
				<package.environment>qa</package.environment>
			</properties>
		</profile>
	</profiles>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<!-- 资源根目录排除各环境的配置,使用单独的资源目录来指定 -->
				<excludes>
					<exclude>qa/*</exclude>
					<exclude>prod/*</exclude>
					<exclude>dev/*</exclude>
				</excludes>
			</resource>
			<resource>
				<directory>src/main/resources/${package.environment}</directory>
				<filtering>true</filtering>
			</resource>
		</resources>
	</build>
</project>

テスト:
mvn clean package または mvn clean package -Pdev は開発環境に必要な war パッケージをビルドします
mvn clean package -Pqa はテスト環境に必要な war パッケージをビルドします
mvn clean package -Pprod は war をビルドします本番環境に必要なパッケージ。

注: Eclipse で実行する場合は、先頭にコマンド mvn を追加しないでください。
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/u011334457/article/details/85680810