maven生产开发测试环境打包配置

2017.11.23 maven
mvn package -Pdev -Dmaven.test.skip=true
mvn package -Ptest -Dmaven.test.skip=true
mvn package -Pprod -Dmaven.test.skip=true

方式2:

有2个配置文件application-dev.yml和application-pro.yml,需要打包,配置

<build>
    <finalName>最终jar/war包名</finalName>
</build>

<!-- 将lib的jar包拷贝到WEB-INF/lib下 -->
<build>
    <plugins>
        <plugin>  
	            <groupId>org.apache.maven.plugins</groupId>  
	            <artifactId>maven-war-plugin</artifactId>  
	            <configuration>
	                <webResources>
						<resource>
							<directory>${project.basedir}/lib</directory>
							<targetPath>WEB-INF/lib</targetPath>
							<filtering>false</filtering>
							<includes>
								<include>**/*.jar</include>
							</includes>
						</resource>
					</webResources>  
	            </configuration>  
	  		</plugin>
    </plugins>
</build>

<!-- 在project下配置,在dev环境,不打包pro文件进去,反之也是如此 -->
<profiles>
		<profile>
			<id>dev</id>
			<properties>
				<env>dev</env>
			</properties>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<build>
				<resources>
					<resource>
						<directory>src/main/resources</directory>
						<filtering>true</filtering>
						<excludes>
							<exclude>application-pro.yml</exclude>
						</excludes>
					</resource>
				</resources>
			</build>
		</profile>
		<profile>
			<id>pro</id>
			<properties>
				<env>pro</env>
			</properties>
			<build>
				<resources>
					<resource>
						<directory>src/main/resources</directory>
						<filtering>true</filtering>
						<excludes>
							<exclude>application-dev.yml</exclude>
						</excludes>
					</resource>
				</resources>
			</build>
		</profile>
	</profiles>

最终打包命令:

打测试包: mvn clean package -Pdev -Dmaven.test.skip=true

打正式包: mvn clean package -Ppro -Dmaven.test.skip=true

更新列表:

参考文章:

相关阅读