102

我使用 Android Studio 中的默认向导创建了一个新的 Android 项目。编译并将应用程序部署到我的设备。一切都很好。

现在我想导入一个在 Maven 上可用的外部库。(http://square.github.io/picasso/)。我去了模块属性,并添加了一个 Maven 库。它正确显示在依赖项列表中。此外,它显示在编辑器中,我可以在代码中正确使用它。

但是,在编译时,我收到 Gradle 错误:无法找到类

有任何想法吗?

4

6 回答 6

83

我以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 应该在“外部库”下显示 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 
    } 
} 
于 2013-05-16T19:19:48.497 回答
74

从 0.8.9 版本开始,Android Studio 默认支持 Maven 中央存储库。因此,要添加外部 maven 依赖项,您只需编辑模块的 build.gradle 文件并在依赖项部分插入一行,如下所示:

dependencies {

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

}

您将看到一条消息,如“立即同步...” - 单击它并等待下载 maven 存储库及其所有依赖项。底部的状态栏中会显示一些消息,告诉您下载发生了什么。完成此操作后,导入的 JAR 文件及其依赖项将列在 Project Browser 窗口的 External Repositories 树中,如下所示。

在此处输入图像描述

这里有一些进一步的解释:http: //developer.android.com/sdk/installing/studio-build.html

于 2014-10-29T12:30:45.577 回答
7

安卓工作室 3

自从 Android Studio 现在使用 JCenter 作为默认存储库中心以来,有关 Maven Central 的答案都已过时。你项目的 build.gradle 文件应该是这样的:

repositories {
    google()
    jcenter()
}

因此,只要开发人员在那里有他们的 Maven 存储库(Picasso 就是这样做的),那么您所要做的就是在应用程序的 build.gradle 文件的依赖项部分添加一行。

dependencies {
    // ...
    implementation 'com.squareup.picasso:picasso:2.5.2'
}
于 2017-01-25T10:09:44.497 回答
5
  1. 在 File>Settings>Gradle>Global Gradle Settings 中取消选中“Offline work”
  2. 重新同步项目,例如通过重新启动 Android Studio
  3. 同步后,您可以再次选中该选项以脱机工作。
于 2014-12-26T07:42:50.957 回答
0

试试itextbuild.gradle在这篇文章中为您的最新添加依赖项

注意:android 的特殊版本,尾随“g”:

dependencies {
    compile 'com.itextpdf:itextg:5.5.9'
}
于 2016-06-01T19:38:07.680 回答
0

Android Studio Bumblebee,文件中的 maven 声明settings.gradle(而不是build.gradle像以前的 AS 版本那样的文件)

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven {
           ....
        }
    }
}
于 2022-02-15T02:20:19.153 回答