[android] Android Studio / IntelliJ에서 Maven 종속성을 가져 오는 방법은 무엇입니까?

Android Studio의 기본 마법사를 사용하여 새 Android 프로젝트를 만들었습니다. 앱을 컴파일하고 내 장치에 배포했습니다. 모든 것이 좋습니다.

이제 Maven에서 사용할 수있는 외부 라이브러리를 가져오고 싶습니다. ( http://square.github.io/picasso/ ). 모듈 속성으로 이동하여 Maven 라이브러리를 추가했습니다. 종속성 목록에 올바르게 표시됩니다. 또한 편집기에 표시되며 코드에서 올바르게 사용할 수 있습니다.

그러나 컴파일 타임에 Gradle 오류가 발생합니다. 클래스를 찾을 수 없습니다.

어떤 아이디어?



답변

0.8.9 버전부터 Android Studio는 기본적으로 Maven Central Repository를 지원합니다. 따라서 외부 Maven 종속성을 추가하려면 모듈의 build.gradle 파일을 편집하고 다음과 같이 종속성 섹션에 행을 삽입하기 만하면됩니다.

dependencies {

    // Remote binary dependency
    compile 'net.schmizz:sshj:0.10.0'

}

‘지금 동기화 …’와 같은 메시지가 표시됩니다. 클릭하고 모든 종속성과 함께 maven 리포지토리가 다운로드 될 때까지 기다립니다. 하단의 상태 표시 줄에 다운로드와 관련하여 어떤 일이 일어나고 있는지 알려주는 메시지가 있습니다. 이 작업이 완료되면 가져온 JAR 파일과 종속성이 아래와 같이 프로젝트 브라우저 창의 외부 저장소 트리에 나열됩니다.

여기에 이미지 설명 입력

여기에 몇 가지 추가 설명이 있습니다.
http://developer.android.com/sdk/installing/studio-build.html


답변

springframework android artifact를 예로 사용하고 있습니다.

build.gradle 열기

그런 다음 플러그인 적용 과 동일한 수준에서 다음을 추가합니다 . ‘android’

apply plugin: 'android'

repositories {
    mavenCentral()
}

dependencies {
   compile group: 'org.springframework.android', name: 'spring-android-rest-template', version: '1.0.1.RELEASE'
}

Maven 아티팩트에도이 표기법을 사용할 수 있습니다.

compile 'org.springframework.android:spring-android-rest-template:1.0.1.RELEASE'

IDE가 표시되지 않으면 ‘External Libraries’아래에 jar와 해당 종속성이 표시되어야합니다. IDE를 다시 시작해보십시오 (이것은 나에게 꽤 많이 발생했습니다)

여기에 당신이 제공 한 예제가 있습니다.

buildscript {
    repositories {
        maven {
            url 'repo1.maven.org/maven2';
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

dependencies {
    compile files('libs/android-support-v4.jar')
    compile group:'com.squareup.picasso', name:'picasso', version:'1.0.1'
}
android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"
    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 17
    }
} 


답변

안드로이드 스튜디오 3

Maven Central에 대해 이야기하는 답변은 Android Studio가 현재 JCenter를 기본 저장소 센터로 사용하기 때문에 날짜가 있습니다. 프로젝트의 build.gradle 파일은 다음과 같아야합니다.

repositories {
    google()
    jcenter()
}

개발자가 Maven 저장소가있는 한 (Picasso가 수행하는 작업), 앱의 build.gradle 파일의 종속성 섹션에 한 줄만 추가하면됩니다.

dependencies {
    // ...
    implementation 'com.squareup.picasso:picasso:2.5.2'
}


답변

  1. 파일> 설정> Gradle> 글로벌 Gradle 설정에서 “오프라인 작업”을 선택 취소하십시오.
  2. 예를 들어 Android Studio를 다시 시작하여 프로젝트를 다시 동기화합니다.
  3. 동기화되면 옵션을 다시 확인하여 오프라인으로 작업 할 수 있습니다.


답변

시도해보십시오 itext. build.gradle이 게시물의 최신에 대한 종속성을 추가하십시오.

참고 : Android 용 특수 버전, 뒤에 “g”:

dependencies {
    compile 'com.itextpdf:itextg:5.5.9'
}


답변