web-dev-qa-db-ja.com

Android St​​udio / IntelliJにMaven依存関係をインポートする方法は?

Android St​​udioのデフォルトウィザードを使用して、新しいAndroidプロジェクトを作成しました。コンパイルし、アプリをデバイスに展開しました。すべては順調です。

次に、Mavenで使用可能な外部ライブラリをインポートします。 ( http://square.github.io/picasso/ )。モジュールプロパティに移動し、Mavenライブラリを追加しました。依存関係のリストに正しく表示されます。さらに、エディターに表示され、コードで正しく使用できます。

ただし、コンパイル時にGradleエラーが発生します:クラスが見つかりません

何か案は?

86
munkay

バージョン0.8.9では、Android St​​udioはデフォルトでMaven Central Repositoryをサポートしています。外部のMaven依存関係を追加するには、モジュールのbuild.gradleファイルを編集し、次のように依存関係セクションに行を挿入するだけです。

dependencies {

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

}

「今すぐ同期...」のようなメッセージが表示されます。それをクリックして、Mavenリポジトリがその依存関係とともにダウンロードされるのを待ちます。下部のステータスバーに、ダウンロードに関して何が起きているかを示すメッセージが表示されます。これが完了すると、インポートされたJARファイルとその依存関係が、以下に示すように、プロジェクトブラウザーウィンドウの外部リポジトリツリーに一覧表示されます。

enter image description here

ここでさらにいくつかの説明: http://developer.Android.com/sdk/installing/studio-build.html

66
dodgy_coder

Springframework Androidアーティファクトを例として使用しています

build.gradleを開きます

次に、apply plugin: '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が表示されない場合は、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 
    } 
} 
78
user1568967

Android Studio

Android St​​udioはデフォルトのリポジトリセンターとしてJCenterを使用するようになったため、Maven Centralについての回答は日付が付けられています。プロジェクトのbuild.gradleファイルには次のようなものが必要です。

repositories {
    google()
    jcenter()
}

そのため、開発者がMavenリポジトリ(Picassoにある)を持っている限り、アプリのbuild.gradleファイルの依存関係セクションに1行追加するだけで済みます。

dependencies {
    // ...
    implementation 'com.squareup.picasso:picasso:2.5.2'
}
6
Suragch
  1. 「ファイル」>「設定」>「Gradle」>「Global Gradle Settings」で「オフライン作業」のチェックを外します
  2. たとえば、Android St​​udioを再起動して、プロジェクトを再同期します
  3. 同期したら、オプションを再度チェックしてオフラインで作業できます。
4
rinkesh

itextを試してください。この投稿の最新のbuild.gradleに依存関係を追加してください

注:Android用の特別なバージョン、末尾の「g」:

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