maven-android-plugin передает свойства сборки - PullRequest
0 голосов
/ 08 сентября 2011

У меня есть файл свойств в папке активов, я хочу переопределить значения в этом файле свойств во время сборки проекта.как mvn clean install -Durl = https://xyx.xom?

EX: assets / my_prop.properties

#  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 при выполнении buid

1 Ответ

0 голосов
/ 08 сентября 2011

В вашем 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 фильтровал любые двоичные файлы, которые могут быть в каталоге активов. Если у вас нет этой части, она обычно портит любые двоичные файлы, пытаясь отфильтровать их.

С учетом того, как это настроено, отфильтрованный файл свойств перейдет в target / классы, которые вы, вероятно, не хотите. Вы можете изменить это, добавив узел <targetPath>. См. эту ссылку для получения дополнительной информации о настройке ресурсов.

...