appengine-maven-плагин против maven-android-плагин
Я пытаюсь использовать Google Cloud Endpoints с клиентом Android, созданным Maven.
Проблема в том, что appengine-maven-plugin v1.8.3+ требует Maven v3.1.0+
[ERROR] Failed to execute goal com.google.appengine:appengine-maven- plugin:1.8.4:endpoints_get_discovery_doc (default) on project pro-gae: The plugin com.google.appengine:appengine-maven-plugin:1.8.4 requires Maven version 3.1.0 -> [Help 1]
в то время как android-maven-plugin v3.6.1 не работает (и не будет) работать с Maven v3.1.0 (см. обсуждение разработчиков на https://code.google.com/p/maven-android-plugin/issues/detail?id=395). Ошибка
A required class was missing while executing com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.1:generate-sources: Lorg/sonatype/aether/RepositorySystem;
Так что я вроде как взаперти. Один плагин запрашивает v3.1.0+, а другой заявляет, что Maven 3.1.0 смертельно глючит. Поэтому я не стал создавать клиентские исходные коды конечных точек вручную.
Любые другие идеи, кроме ожидания исправленного Maven 3.1.1? Похоже, это произойдет не скоро, потому что Maven 3.1.0 был выпущен более двух месяцев назад.
3 ответа
Последняя версия плагина Android Maven - 3.8.0, и теперь требуется Maven 3.1.1+. Это должно позволить вам также использовать последний плагин appengine. И Maven 3.1.1 был выпущен в то же время.
Обновление сентябрь 2015: последняя версия плагина 4.3.0 с 4.3.1 за углом. Ветка 4x работает с Maven 3.0.5+, но мы настоятельно рекомендуем пользователям использовать последнюю версию Maven.
Хм, выглядит решенным, просто используя более старую версию (1.8.2) appengine-maven-plugin.
Другим способом построения является настройка конфигурации запуска для использования внешней среды выполнения Maven.
Чтобы сделать это в Eclipse для Windows: Щелкните правой кнопкой мыши Project -> Run Configuration -> Create a new configuration -> На вкладке Main настройте Maven Runtime.
Надеюсь, это поможет.