2014-02-13 74 views
1

我有一个为客户定制的android项目。所以我已经构建了2个apk的 第一个是普通apk,它是不能自行启动的实际应用程序,第二个apk是客户特定的。这将调用第一个传递客户端名称作为参数,以便通用apk可以根据传递的客户端名称工作。如何使用maven构建同一项目的2个版本

随着客户数量的不断增长,这样做效率低下。所以我想要有一个apk,但为不同的客户单独构建。我不想为每个客户单独复制项目。我们如何使用maven做到这一点?

从maven blogs,他们不建议这样做。非常感谢任何帮助

+0

你能使用[Maven的配置文件(https://maven.apache.org/guides/introduction/introduction-to-profiles.html)?您可以将客户特定的配置分解为不同的配置文件,然后在构建时调用特定的配置文件:'mvn package -P customerX'。 –

+0

我会建议为插件做两次执行,以得到一个单一版本的结果。 – khmarbaise

+0

是的,我正在那样做。但是,我如何为所有cutomer使用发布配置文件的commom属性。假设我想为客户ABC使用发布配置文件。我们如何做这样复杂的构建 –

回答

0

为每个只包含名称等资源的客户端创建一个项目。将您的主应用程序作为源APK与以下插件捆绑在一起: ApkSourcesDependency

最后,将您的主应用程序用作您的客户端pom中的依赖项。这可以通过父Pom来推广。

<dependency> 
    <groupId>enter.groupid.here</groupId> 
    <artifactId>myapp-common-stuff</artifactId> 
    <type>apksources</type> 
</dependency> 

之后只是建立每一个客户项目

+0

将试试这个,看看它是如何工作的 –

相关问题