Use an alternative Maven Profile during test phase

前端 未结 2 1062
再見小時候
再見小時候 2021-02-11 02:06

I\'m trying to build an application starting from an Appfuse Archetype, but I get some strange problems. For once I\'d like to use a hsqldb for automated unit tests and integrat

相关标签:
2条回答
  • 2021-02-11 02:16

    I'm not sure if this is exactly what you are asking for, but you can do the following to setup multiple filters for your Maven project.

    <filters>
      <filter>/your/path/filter-${env}.properties</filter>
    </filters>
    

    This way you can setup multiple profiles using:

    <profiles>
      <profile>
        <id>local</id>
        <properties>
          <env>local</env>
        </properties>
      </profile>
      <profile>
        <id>test</id>
        <properties>
          <env>test</env>
        </properties>
      </profile>
    </profiles>
    

    You can then run the build with the relevant property file using:

    mvn -P <profile id>
    

    This would require having property files located at:

    /your/path/filter-local.properties
    /your/path/filter-test.properties
    
    0 讨论(0)
  • 2021-02-11 02:25

    Not sure if this can help you at all but you can specify alternative resource files in the /src/test/resources folder which override the ones in /src/main/resources when running tests only.

    I define an alternative placeholders.properties file here to specify another db connection to be used by the test phase.

    0 讨论(0)
提交回复
热议问题