Maven 2 如何根据我的配置文件在maven中更改.properties文件?

Maven 2 如何根据我的配置文件在maven中更改.properties文件?,maven-2,properties,Maven 2,Properties,如何根据我的配置文件在maven中更改.properties文件?根据应用程序是构建为在工作站上运行还是在数据中心上运行,文件my_config.properties的部分(但不是全部)会发生更改 目前,在hudson构建每个版本后,我手动更改.war文件中的.properties文件。通常,有几种方法可以实现这类功能。但它们中的大多数都是围绕相同功能的变体:配置文件和过滤。我将展示最简单的方法 首先,启用资源筛选: <project> ... <build>

如何根据我的配置文件在maven中更改.properties文件?根据应用程序是构建为在工作站上运行还是在数据中心上运行,文件my_config.properties的部分(但不是全部)会发生更改


目前,在hudson构建每个版本后,我手动更改.war文件中的.properties文件。

通常,有几种方法可以实现这类功能。但它们中的大多数都是围绕相同功能的变体:配置文件和过滤。我将展示最简单的方法

首先,启用资源筛选:

<project>
  ...
  <build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
      </resource>
    </resources>
    ...
  </build>
</project>
最后,在概要文件中声明属性及其值:

<project>
  ...
  <profiles>
    <profile>
      <id>env-dev</id>
      <activation>
        <property>
          <name>env</name>
          <value>dev</value>
        </property>
      </activation>
      <properties>
        <foo.bar>othervalue</foo.bar>
      </properties>
    </profile>
    ...
  </profiles>
</project>

...
环境发展

  • 更多资源

    如果使用
    弹簧靴
    厚度会略有不同。我无法让它工作,你能帮我检查一下吗!我为sentry.io配置了以下内容:谢谢您的评论,
    <project>
      ...
      <profiles>
        <profile>
          <id>env-dev</id>
          <activation>
            <property>
              <name>env</name>
              <value>dev</value>
            </property>
          </activation>
          <properties>
            <foo.bar>othervalue</foo.bar>
          </properties>
        </profile>
        ...
      </profiles>
    </project>
    
    $ mvn process-resources -Denv=dev [INFO] Scanning for projects... ... $ cat target/classes/my_config.properties myprop1 = somevalue myprop2 = othervalue