2015-07-16 3 views
16

Я хотел бы включить модификацию в качестве модуля в свой проект Android Studio. Проблема в том, что retrofit - проект maven, поэтому Android Studio не позволит мне импортировать его. Есть ли способ обойти это?Как импортировать модуль maven в проект Android Studio

Аналогичный вопрос был задан before, но ответа он не получил.

+1

В чем проблема, с которой вы сталкиваетесь? Что вы пробовали? – Ethan

+0

Поскольку IntelliJ сам поддерживает модули Gradle и Maven в одном проекте, возможно, использование IntelliJ с плагином Android вместо Android Studio позволит это, но я не уверен, что можно добавить поддержку Android для простого IntelliJ, любого знает? –

ответ

13

Используйте пользовательскую группу и/или артефакт в POM вашего клона, так что ваш клон не может спутать с оригиналом.

Постройте и установите ваш клон «Дооснащения» с помощью Maven, как обычно: mvn install. (Использование командной строки или IDE, отличной от Android Studio.) После каждого изменения вы должны создать свой RetoFit-клон вручную, чтобы Gradle мог видеть изменения.

Добавить местный репозиторий Maven к вашему сценарию Gradle. См https://docs.gradle.org/2.5/dsl/org.gradle.api.artifacts.dsl.RepositoryHandler.html#org.gradle.api.artifacts.dsl.RepositoryHandler:mavenLocal():

repositories { 
    mavenLocal() 
} 

Добавьте Гав ваш клон в качестве зависимости в скрипт Gradle:

dependencies { 
    compile 'com.yourgroup:retrofit:1.9.0-custom' 
} 
+0

Нет другого способа открыть оба модуля Gradle и Maven в том же окне Android Studio? –

+0

Я хочу попробовать библиотеку, указанную в этой ссылке https://github.com/Almeros/android-gesture-detectors, любезно предоставит мне –

2

Просто добавьте его в блок dependencies { } вашего приложения build.gradle файл.

dependencies { 
    compile 'com.squareup.retrofit:retrofit:1.9.0' 
} 
+3

Спасибо, но я хочу включить локальный клон Retrofit, я не хочу извлекать его из репозитория maven –

5

Перейдите в свой проект, затем перейдите в приложение. Вы увидите файл build.gradle в приложении (НЕ используйте градиент под папкой gradle, но ine под папкой приложения). Добавьте эту строку.

dependencies { 
.... 
compile 'com.squareup.retrofit:retrofit:1.9.0' 

... 

} 

Затем убедитесь, что вы определяете данные репозитория в каталоге и добавляете URL-адрес.

repositories { 
     flatDir { 
      dirs 'libs' 
     } 
     maven { url 'http://download.crashlytics.com/maven' } 
    }`` 
+2

Спасибо, но я хочу включить локальный клон Retrofit, я не хочу его извлекать из репозитория maven –

+0

Как включить эту библиотеку. Я пытаюсь с последних 4 часов, но напрасно. Пожалуйста, предложите что-нибудь. Ссылка https://github.com/Almeros/android-gesture-detectors –

0

В андроиде студии просто перейти к проекту структуры -> модуль, который вы хотите добавить переоснащение - > вкладки зависимостей -> плюс (добавить) -> зависимость библиотеки, а затем введите модификацию в текстовое поле и выберите com.squareup.retrofit: модифицируйте и добавьте в свои зависимости

+0

Это, похоже, не работает в версии 2.2.3 –

1

См. Migrating from Maven to Gradle. Просто выполните gradle init.

+0

Работало для меня! После преобразования в Gradle с помощью «gradle init» перейдите к корню дерева проекта -> щелкните правой кнопкой мыши -> Создать -> Модуль -> Проект оценки импорта -> Выберите преобразованный проект. – AmitW

Смежные вопросы