Eduardo Melo
Eduardo Melo

Reputation: 519

How to configure Maven profiles with different resources folders?

I'm trying to configure my application to have 2 build profiles: development and production. In order to do that, I created two subdirectories under the src/main/resources folder: src/main/resources/development and src/main/resources/production. Each subdirectory has its own .properties files.

<profiles>
    <profile>
        <id>development</id>
        <build>
            <resources>
                <resource>
                    <directory>src/main/resources/development</directory>
                </resource>
            </resources>
        </build>
    </profile>
    <profile>
        <id>production</id>
        <build>
            <resources>
                <resource>
                    <directory>src/main/resource/production</directory>
                </resource>
            </resources>
        </build>
    </profile>
</profiles>

I build the app with the command mvn install -P ${profile_here}

Maven copies the content of the folder related to the chosen profile to the WEB-INF/classes output directory, however the development and production folders are copied as well.

WEB-INF/classes

WEB-INF/classes/development

WEB-INF/classes/production

How can I solve this problem?

Thanks in advance.

Upvotes: 0

Views: 1989

Answers (1)

gtonic
gtonic

Reputation: 2313

The maven-war-plugin is rather limited when it comes to resources. However, you could use the maven-resources-plugin to include/exclude resources like described here: https://maven.apache.org/plugins/maven-resources-plugin/examples/include-exclude.html

Upvotes: 1

Related Questions