当前位置:   article > 正文

Maven打包不同环境(PRD、UAT、SIT)的配置文件_maven项目打包sit环境 命令

maven项目打包sit环境 命令

1、创建指定目录

 

src/main/resources/uat 目录下properties是验证环境的配置文件

src/main/resources/prd 目录下properties是生产环境的配置文件

 

2、pom.xml内配置profiles

 

  1. <profiles>
  2. <!-- <profile>
  3. <id>dev</id>
  4. <activation>
  5. <activeByDefault>true</activeByDefault>
  6. </activation>
  7. <properties>
  8. <package.environment>dev</package.environment>
  9. </properties>
  10. </profile> -->
  11. <profile>
  12. <id>uat</id>
  13. <properties>
  14. <package.environment>uat</package.environment>
  15. </properties>
  16. </profile>
  17. <profile>
  18. <id>prd</id>
  19. <properties>
  20. <package.environment>prd</package.environment>
  21. </properties>
  22. </profile>
  23. </profiles>

注:可以在工程下xml、properties文件中使用${package.environment}获取数据。

3、pom.xml内build标签下配置plugins

 

  1. <plugins>
  2. <plugin>
  3. <groupId>org.apache.maven.plugins</groupId>
  4. <artifactId>maven-compiler-plugin</artifactId>
  5. <configuration>
  6. <source>${maven.compiler.source}</source>
  7. <target>${maven.compiler.target}</target>
  8. <encoding>UTF-8</encoding>
  9. </configuration>
  10. </plugin>
  11. <!-- 不同环境的加载指定配置 -->
  12. <plugin>
  13. <groupId>org.apache.maven.plugins</groupId>
  14. <artifactId>maven-resources-plugin</artifactId>
  15. <executions>
  16. <execution>
  17. <id>copy-resources</id>
  18. <phase>compile</phase>
  19. <goals>
  20. <goal>copy-resources</goal>
  21. </goals>
  22. <configuration>
  23.              <!-- 覆盖原有文件 -->
  24.              <overwrite>true</overwrite>
  25. <outputDirectory>${project.build.outputDirectory}</outputDirectory>
  26. <!-- 也可以用下面这样的方式(指定相对url的方式指定outputDirectory) -->
  27. <!-- <outputDirectory>target/classes</outputDirectory> -->
  28. <!-- 待处理的资源定义 -->
  29. <resources>
  30. <resource>
  31. <!-- 指定resources插件处理指定目录下的资源文件 -->
  32. <directory>src/main/resources/${package.environment}</directory>
  33. <filtering>false</filtering>
  34. </resource>
  35. </resources>
  36. </configuration>
  37. <inherited></inherited>
  38. </execution>
  39. </executions>
  40. </plugin>
  41. </plugins>

4、pom.xml内build标签下配置resources

 

  1. <resources>
  2. <resource>
  3. <directory>src/main/java</directory>
  4. <includes>
  5. <include>**/*.properties</include>
  6. <include>**/*.xml</include>
  7. </includes>
  8. <filtering>true</filtering>
  9. </resource>
  10. <resource>
  11. <directory>src/main/resources</directory>
  12. <!-- 排除uat、prd目录下的文件 -->
  13. <excludes>
  14. <exclude>uat/**</exclude>
  15. <exclude>prd/**</exclude>
  16. </excludes>
  17. <includes>
  18. <include>**/*.properties</include>
  19. <include>**/*.xml</include>
  20. </includes>
  21. <filtering>true</filtering>
  22. </resource>
  23. </resources>

5、自动化编译打包命令,由-P参数区分

mvn clean package -Dmaven.test.skip=true -Puat

mvn clean package -Dmaven.test.skip=true -Pprd

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/286328
推荐阅读
相关标签
  

闽ICP备14008679号