Maven-android-plugin传递构建属性



我在资产文件夹中有一个属性文件,我想在项目构建时覆盖这个属性文件中的值。像mvn clean install -Durl=https://xyx.xom?

例:资产/my_prop。

属性
#  my_server_url=http://www.test.com/ 
change to 
my_server_url=${url}

我想取代my_server_url值在构建时我所做的:mvn clean install -Durl=http://xys.com

但它没有替换,我怎么能在做构建时替换my_server_url

在您的pom中,在<build>节点内,您需要启用如下过滤:

<build>
    <resources>
        <resource>
            <directory>assets</directory>
            <filtering>true</filtering>
            <includes>
                <include>**/*.properties</include>
            </includes>
        </resource>
        <resource>
            <directory>assets</directory>
            <filtering>false</filtering>
            <excludes>
                <exclude>**/*.properties</exclude>
            </excludes>
        </resource>
    </resources>
    ...
</build>

完成后,您可以运行以下命令进行测试:

mvn resources:resource -Durl=http://www.test.com/

注意,排除部分在那里是因为您不希望Maven过滤资产目录中可能拥有的任何二进制文件。如果你没有这个部分,它通常会通过试图过滤它们来破坏任何二进制文件。

使用这种配置方式,过滤后的属性文件将进入目标/类,这可能是您不想要的。您可以通过添加<targetPath>节点来改变这一点。有关配置资源的更多注意事项,请参阅此链接。

相关内容

  • 没有找到相关文章

最新更新