常春藤的敏感性建立双平台桌面

常春藤的敏感性建立双平台桌面

本文介绍了结合Maven的/ ANT +常春藤的敏感性建立双平台桌面/ Android的部署管理?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前preparing启动一个新项目,并想知道的构建管理工具的选择。(Maven和蚂蚁+艾维的非排他性的替代品)

的一般方案如下:


  • 小,几​​个人的项目,

  • 所有的开发人员使用Eclipse作为IDE,

  • 两个目标:机器人(主)和Java SE,

  • 我们会在CI(詹金斯特别),所以还需要一些构建管理的。

关于设想项目结构:


  • 一个总的模块,与大多数code和共同的依赖,

  • 一款使用Android操作系统专用模块,采用Android特有DEPS和code,

  • 一个特定的台式机模块,具体桌面DEPS和code。

和非技术方面的考虑:


  • 在项目中我负责构建管理和CI的人,

  • 我有经验,在同时使用Maven和Ant的,但在配置多练习前,

  • 只有常春藤的基本知识,

  • 我已经很复杂的经验与使用Maven为Android构建,尤其是与Eclipse的互操作有关。

On the surface it seems like it will go fine, but my intuition tells me involving so many technologies might end up being painful in practice.

To summarize, my question is:

Given the conditions, is it OK to use the setup described in the blockquote, or should we go pure Maven/Ant+Ivy (and if so, which one and why)?

解决方案

Which one?

I would go with pure Maven approach.

Why?

The scenario you described is perfectly fit into an Aggregation (or Multi-Module) Project, From my own experience, compare with Ant, Maven provides a more efficient, reasonable and native way for managing multi-module project with inter-module dependencies.

Your project structure:

my-project/
  common-lib/  <-- classic Java project, build as a jar library
  desktop-app/  <-- classic Java project, build as a jar application
  android-app/  <-- Android project, build as a apk application
  android-app-test/ <-- Android Test project, build as a apk application
  pom.xml

Your root pom.xml:

<modules>
  <module>common-lib</module>
  <module>desktop-app</module>
  <module>android-app</module>
  <module>android-app-test</module>
</modules>

By using android-maven-plugin, you can maintain a standard and unified way for release your multi-module project (more precisely, android-maven-plugin is used for building release for Android sub-module project) from command-line cross team.

By using two eclipse plugins: m2e and m2e-android (all available via Eclipse Marketplace), you can maintain a standard and unified way for import/develop/debug your multi-module project in Eclipse cross team.

As Maven is qualified for managing everything, there is no need to use Ant+Ivy.

这篇关于结合Maven的/ ANT +常春藤的敏感性建立双平台桌面/ Android的部署管理?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-22 07:20