Я использую Maven с моим проектом Android, а также с Android-maven-plugin. В моем pom.xml файл проекта я объявляю зависимость так:Неразрешенная зависимость андроида от maven при создании в IntelliJ
<dependency>
<groupId>com.viewpagerindicator</groupId>
<artifactId>library</artifactId>
<version>2.4.1</version>
<type>apklib</type>
</dependency>
ViewPagerIndicator имеет зависимость от Android 4.1.1.4, который находится на Maven Центральной here. Однако, я не строю с Android 4.1.1.4, я построю на 4.2.2 r2, которая объявлена как так:
<dependency>
<groupId>android</groupId>
<artifactId>android</artifactId>
<version>4.2.2_r2</version>
</dependency>
Этот артефакт находится не на Maven Central, я использую maven-android-sdk-deployer к нажмите артефакты Android в мое репо.
Если я открою свой терминал и построю с maven, проблем нет. Проблема в том, что я импортирую свой проект в IntelliJ и пытаюсь построить. Настройки модуля (правильно) жалуются, что путь к зависимости Android 4.1.1.4 в модуле apklib ViewPagerIndicator нарушен.
Я проверил папку .m2/repository для флеш-накопителя Android 4.1.1.4, и для нее нет даже папки, что означает, что Maven никогда не скачал ее. Я предполагаю, что это имеет какое-то отношение к тому, как работает maven-android-плагин, когда вы строите Maven, и как работает IntelliJ.
Я знаю, что могу просто взять банку и развернуть ее сам вручную, но я ищу лучшее решение, поэтому новым членам моей команды нужно только захватить исходный код и больше ничего не делать для создания проекта. Я уже настроил Nexus для команды, поэтому нам не нужно вручную развертывать сторонние банки и запускать развертыватель sdk на каждой машине. Я хотел бы иметь возможность просто передать новому разработчику источник, и они могут просто работать с ним.
Если я пытаюсь исключить зависимости Android, которые я не могу построить, все классы в библиотеке ViewPagerIndicator, у которых есть зависимости от Android, жалуются. –
У вас есть зависимости в вашем файле pom.xml в библиотеке поддержки Android? ' android.support совместимости v4 ' –
Да, но перечисленные как это: ' com.google.андроид поддержка-v4 r13 ' –