Resource file directory compilation in different environments

 

Resource file directory compilation in different environments

1. Set the resource directory in the editor (further modify the compilation structure in the configuration file)

 

<profiles>

<profile>

<id>dev</id>

<properties>

<env-dir>META-INF/environments/dev</env-dir>

</properties>

<activation>

<activeByDefault>true</activeByDefault>

</activation>

</profile>

<profile>

<id>sit</id>

<properties>

<env-dir> META-INF / environments / sit </env-dir>

</properties>

</profile>

<profile>

<id>prod</id>

<properties>

<env-dir>META-INF/environments/prod</env-dir>

</properties>

</profile>

</profiles>

 

 

<build>

<finalName>${project.artifactId}</finalName>

 

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>1.7</source>

<target>1.7</target>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-resources-plugin</artifactId>

<configuration>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-war-plugin</artifactId>

<version>2.0.2</version>

<configuration>

</configuration>

</plugin>

</plugins>

<resources>

<resource>

<directory>src/main/resources/${env-dir}</directory>

<filtering>true</filtering>

</resource>

<resource>

<directory>src/main/resources</directory>

<includes>

<include>**/*.xml</include>

<include>**/*.properties</include>

</includes>

</resource>

</resources>

</build>

 

2, set in the build in maven

 

 

 

The places referenced in the file use these in the classpath directory

 

In the maven parent project, it can be shared by all projects, especially the consumer side and the server side

</properties>

 

    <profiles>

        <profile>

            <id>dev</id>

            <properties>

                <env>dev</env>

            </properties>

            <activation>  

            <activeByDefault>true</activeByDefault>  

        </activation>

        </profile>

        <profile>

            <id>test</id>

            <properties>

                <env>test</env>

            </properties>

        </profile>

        <profile>

            <id>sit</id>

            <properties>

                <env>sit</env>

            </properties>

        </profile>

        <profile>

            <id>prod</id>

            <properties>

                <env>prod</env>

            </properties>

        </profile>

    </profiles>

 

 

Configuration on the consumer side

<build>

<finalName>${project.artifactId}</finalName>

<plugins>

<plugin>

<groupId>org.eclipse.jetty</groupId>

<artifactId>jetty-maven-plugin</artifactId>

<version>${jetty-maven-plugin.version}</version>

<dependencies>

<dependency>

<groupId>org.ow2.asm</groupId>

<artifactId>asm</artifactId>

<version>5.0.2</version>

</dependency>

<dependency>

<groupId>org.ow2.asm</groupId>

<artifactId>asm-commons</artifactId>

<version>5.0.2</version>

</dependency>

</dependencies>

<configuration>

<httpConnector>

<port>8080</port>

</httpConnector>

<webAppConfig>

<contextPath>/${project.artifactId}</contextPath>

<allowDuplicateFragmentNames>true</allowDuplicateFragmentNames>

</webAppConfig>

<systemProperties>

<systemProperty>

<name>org.mortbay.util.URI.charset</name>

<value>UTF-8</value>

</systemProperty>

</systemProperties>

<stopKey />

</configuration>

</plugin>

</plugins>

<resources>

 

<resource>

<directory>${basedir}/src/main/resources</directory>

<includes>

<!--<include>*.xml</include>-->

<include>spring/*</include>

</includes>

<excludes>

<exclude>*.xml</exclude>

<exclude>.properties</exclude>

</excludes>

<filtering>true</filtering>

</resource>

<resource>

<directory>${basedir}/src/main/resources/stub</directory>

<targetPath>${basedir}/target/classes/stub</targetPath>

<includes>

<include>*.json</include>

</includes>

<filtering>false</filtering>

</resource>

<resource>

<directory>${basedir}/src/main/resources/stub/template</directory>

<targetPath>${basedir}/target/classes/template</targetPath>

<includes>

<include>*.xlsx</include>

<include>*.xml</include>

</includes>

<filtering>false</filtering>

</resource>

<resource>

<directory>${basedir}/src/main/resources/properties/${env}</directory>

<includes>

<include>*.xml</include>

<include>*.properties</include>

</includes>

<filtering>true</filtering>

</resource>

</resources>

</build>

 

 

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326014992&siteId=291194637