如何在java maven vaadin项目中为不同的环境使用不同的配置文件?

时间:2016-10-11 09:00:52

标签: java maven maven-profiles

我想在基于vaadin的maven应用程序(war文件)中设置不同的构建配置文件,该应用程序应该使用不同的配置文件,例如:用于数据库配置。最简单的方法是用 prod 配置文件替换 dev 配置文件。

我尝试使用maven-profiles实现这一点,我已经查看了很多解决方案,但我不知道如何根据配置文件命名我的目录,因为我的属性文件位于不同的位置。

我的应用程序使用java文件和资源的标准maven目录布局,但配置文件位于某个子文件夹层次结构中:

/myvaadinapp/src/main/resources/xxx/xxx/xxx/myapp/project/xxxx/db/config/config.properties

问题:我在哪里创建配置文件文件夹以及在哪里放置不同的配置文件?

我的个人资料配置:

<profiles>
        <profile>
            <id>prod</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <properties>
                <build.profile.id>prod</build.profile.id>
            </properties>
        </profile>
    </profiles>

1 个答案:

答案 0 :(得分:0)

在你的pom中添加这些:

<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/profiles/${build.profile.id}</directory>
        </resource>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
        </resource>
    </resources>
</build>

如果使用prod配置文件,请将prod配置文件相关资源文件放在src / main / profiles / prod目录中,并将所有配置文件的公共资源文件放在src / main / resources目录中。