在多種環境下,配置文件難免出現,在自動化部署中,maven的使用還是比較廣泛和穩定,在此記錄下一些常見的配置。
Resource
profile
<profiles>
<profile>
<id>test</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<project.classifier>test</project.classifier>
</properties>
<build>
<filters>
<filter>test.properties</filter>
</filters>
</build>
</profile>
<profile>
<id>dev</id>
<properties>
<project.classifier>dev</project.classifier>
</properties>
<build>
<filters>
<filter>dev.properties</filter>
</filters>
</build>
</profile>
<profile>
<id>prod1</id>
<properties>
<project.classifier>prod1</project.classifier>
</properties>
<build>
<filters>
<filter>prod1.properties</filter>
</filters>
</build>
</profile>
</profiles>
WebResource
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<filters>
<filter>
${project.basedir}/${project.classifier}.properties
</filter>
</filters>
<webResources>
<resource>
<filtering>true</filtering>
<directory>src/main/webapp</directory>
<includes>
<include>path/to/filterfile</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
遇到的問題
在使用過程中,本地一切正常,但是部署到遠程服務器時,js文件始終沒有被過濾,耗盡了半天的時間,查詢了各種情況,終無效果。當無意查看遠程pom.xml文件時,意外發現<202c>詭異的代碼,試著將對應的代碼刪除重寫,奇跡出現了:)~