Я не знаю точной причины, но похоже, что properties-maven-plugin может заменить значение свойства, правильно определенное в теге properties в pom.xml, а maven может распознавать только имя свойства, явно определенное в pom.xml.у меня работает следующий pom:
<properties>
<!-- use property name defined in your buildNumber.properties -->
<external.build.version>${major_version}</external.build.version>
</properties>
... ...
<build>
<sourceDirectory>src</sourceDirectory>
<!-- use property name defined earlier in this pom.xml -->
<finalName>myapk.${external.build.version}</finalName>
... ...
РЕДАКТИРОВАТЬ:
С моей точки зрения, предопределенный жизненный цикл сборки maven довольно эксклюзивен, особенно при интеграции с другими инструментами сборкиподобно ADT, версия pom, используемая для генерации apk, довольно ограничена, кроме того, из документации для плагина , текущая версия android-maven-plugin не предоставляет никакой конфигурации для настройки окончательного имени apk во время apk goal,Подобное обсуждение было опубликовано здесь в итоге получился не очень идеальный ответ.
В качестве последнего снимка, android-maven-plugin предоставляет опции для настройки окончательного имени apk во время цели zipalign:
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<sdk>
<platform>13</platform>
</sdk>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
<zipalign>
<verbose>true</verbose>
<inputApk>${project.build.directory}/${project.artifactId}-${project.version}.apk</inputApk>
<!-- directly use property name defined in external properties file here -->
<outputApk>${project.build.directory}/${project.artifactId}-${major_version}-aligned.apk</outputApk>
</zipalign>
</configuration>
<executions>
<execution>
<id>alignApk</id>
<phase>package</phase>
<goals>
<goal>zipalign</goal>
</goals>
</execution>
</executions>
</plugin>
Это может быть решением, если вы используете maven zipalign в своем последнем apk (я полагаю, вы используете), вы получите все три выходных файла (.ap_ и .apk и .jar), заканчивающиеся на значение по умолчанию ${project.version} плюс еще один apk, заканчивающийся на $ {major_version} -aligned, однако в центральном репозитории maven будут установлены только те три с $ {project.version} по умолчанию.