在Maven 3发布期间提交更新的Proguard映射

时间:2012-03-05 15:27:39

标签: android maven-3 proguard

我使用Maven 3来管理Android应用程序的构建和发布周期。在发布期间,使用Proguard maven插件对应用程序源进行模糊处理。理想情况下,我希望在发布过程中将更新的Proguard混淆映射提交到git存储库。我目前将映射附加到推送到发布存储库的工件,但是如果可能的话我想将映射保留在git中。

这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:1)

如果我理解正确你需要做配置,所以@khmarbaise的解决方案是不够的。我建议在创建proguard映射后立即使用发布配置文件中的maven-scm插件。

您需要添加映射文件: http://maven.apache.org/scm/maven-scm-plugin/add-mojo.html

然后检查它 http://maven.apache.org/scm/maven-scm-plugin/checkin-mojo.html

也许是这样的:

<profiles>

  <profile>
    <id>release</id>
    <activation>
      <property>
        <name>performRelease</name>
        <value>true</value>
      </property>
    </activation>

    <build>
      <plugins>
        <plugin>
          <artifactId>maven-scm-plugin</artifactId>
          ...
          <configuration>
            ... add your scm setup here ...
          </configuration>
          <executions>
            <execution>
              <id>addMap</id>
              <phase>install</phase>
              <goals>
                <goal>add</goal>
              </goals>
            </execution>
            <execution>
              <id>commitMap</id>
              <phase>install</phase>
              <goals>
                <goal>checkin</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </build>
    ...
  </profile>
</profiles>

答案 1 :(得分:0)

您可以在提交之前通过maven-release-plugin运行目标,如文档中所述。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.2.2</version>
    <configuration>
      <preparationGoals>clean verify</preparationGoals>
    </configuration>
</plugin>