64

我有一个Github repo并在上面推送了标签。

这是我的主要项目的 gradle 文件。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"

    defaultConfig {
        applicationId "dropbox.ric.es.myapplication"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    //mavenCentral()
    //jcenter()

    maven { url "https://jitpack.io" }

}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.github.rchampa:DropboxHttpConector:1.0.1'
}

但是当我同步 gradle 时出现以下错误Failed to resolve com.github.rchampa:DropboxHttpConector:1.0.1

另一种尝试:

allprojects {
    repositories {
        jcenter()
        maven { url "https://jitpack.io" }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.github.rchampa:DropboxHttpConector:1.0.1'
}

仍然失败。

4

10 回答 10

167

对于其他犯了我犯的简单错误的人:

确保添加maven { url "https://jitpack.io" }underallprojects而不是buildscript.

项目build.gradle文件:

buildscript {
    repositories {
        jcenter()
        // DO NOT ADD IT HERE!!!
    }
    ...
}

allprojects {
    repositories {
        mavenLocal()
        jcenter()
        // ADD IT HERE
        maven { url "https://jitpack.io" }
    }
}

感谢Alexander Pacha在上面的评论中指出这一点。

于 2017-01-08T03:07:08.667 回答
17

经过几次尝试并感谢 jitpack 支持,现在我可以将托管在 Github 中的库作为 Android Gradle 依赖项导入。

我将提供一些非常有用的链接:

如何设置你的 java 库

https://jitpack.io/docs/BUILDING/#gradle-projects

如何在 jitpack 中检查依赖项的日志

https://jitpack.io/com/github/USER/REPO/TAG/build.log

就我而言

https://jitpack.io/com/github/rchampa/DropboxHttpConector/1.0.3/build.log
于 2015-10-10T21:45:48.610 回答
9

我有几个来自 Jitpack 的依赖项,在迁移到 Gradle 2 后遇到了这个问题。

我的解决方案是将版本distributionUrlgradle-wrapper.properties2.10(当我接受更新包装器版本时由 Studio 自动设置)更改为最新版本。

于 2016-04-09T10:36:06.753 回答
6

较新版本的 Android Studio 不再使用allprojects

打开文件settings.gradle并添加存储库,如下所示:

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' } // <- here we go
        jcenter()
    }
}

还要从文件项目的 build.gradle中删除以下代码(如果它仍然存在):

allprojects {
repositories {
    jcenter()
    maven { url "https://jitpack.io" }
}}
于 2021-09-28T12:19:03.883 回答
3

Verify that maven { url "https://jitpack.io" } is in allprojects section in build.gradle (Project)

于 2019-01-15T11:31:06.230 回答
3

哈利路亚我有问题!

所以我意识到问题依赖于我的网络!我无法从我的 IP 访问https://jitpack.io/,这就是为什么没有任何工作。刚刚从 GSM 模块共享互联网(以获得不同的 IP)并且使用@SteveMellross 解决方案解决了问题

也许你有同样的问题可能是 0.001% 但如果没有任何效果,请尝试访问https://jitpack.io/ ;)

我希望只是防火墙或内部路由器错误,我的 IP 没有被他们的服务禁止。

于 2018-10-09T08:40:25.600 回答
1

对我来说,我这样做了

1.分叉原始未维护的repo

2.做了一些更改,创建了提交

3.从提交详细信息页面 url 复制提交哈希,例如https://github.com/omkar-tenkale/NavigationTabStrip/commit/9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0

4.从repo url创建实现字符串

实施 'com.github.User:Repo:Version'

    Group: com.github.Username
    Artifact: Repository Name
    Version: Release tag, commit hash or master-SNAPSHOT
    More at https://github.com/jitpack/jitpack.io

我使用提交哈希作为版本

实施 'com.github.omkar-tenkale:NavigationTabStrip:9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0'

5.现在在android app模块的build gradle中添加了

6.但出现错误 Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve...etc

7.创建以下格式的链接

https://jitpack.io/com/github/USER/REPO/TAG/build.log

在我的情况下 https://jitpack.io/com/github/omkar-tenkale/NavigationTabStrip/9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0/

8.在浏览器中打开此链接

9.看到这样的东西

NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0-javadoc.jar
NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0-sources.jar
NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0.aar
NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0.pom
NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0.pom.md5
NavigationTabStrip-9d097af9fe2167fc0dfc71d2e63d6194b2cebfb0.pom.sha1
build.log
  1. 在工作室中再次同步 gradle 成功了!

这比下载 repo、在我们的应用程序中作为模块导入然后使用它等要好得多。

每当您对此分叉存储库进行更改时,也不要忘记更新提交哈希!

于 2020-09-21T11:58:49.723 回答
0

当我尝试从 github 导入 o​​rhanobut/logger 时遇到了这个问题。然后我去jitpack.io搜索包: find logger in jitpack 然后我点击日志图标,发现:

开始:2016 年 1 月 14 日星期四 11:56:56 UTC Git:v1.9 提交 5abbc1563422457d4c23e1a0a412d2b0c7dc334e 合并:8ef1e6b 522d44d 作者:Orhan Obut 日期:2015 年 5 月 25 日星期一 11:34:20 +0200

从 orhanobut/oo/settings-fix 子模块状态合并拉取请求 #30:运行 gradle build Gradle build script Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 Downloading https://services.gradle.org/distributions/gradle-2.2 .1- 所有.zip

就是这样,它使用 gradle 2.2.1-all!

然后我去我的项目并在settings.gradle中将gradle版本更改为2.2.1,一切正常!

于 2016-08-05T06:02:51.490 回答
0

我知道这很旧,但我最近遇到了这个问题,我通过添加解决了这个问题

maven { url 'https://jitpack.io' }

settings.gradle(ProjectSettings)dependencyResolutionManagement{repositories{$HERE}}。我不知道是推荐还是侥幸,因为我还不是很精通。

于 2022-01-18T15:13:43.547 回答
0

我正在使用Android Studio Arctic Fox 2020.3.1 | Canary 8并遇到上述问题。我的 repo 项目是一个纯 Kotlin 项目,我想将它导入到我的 Android 项目中。

以下是我为我解决问题的几个步骤 - 它可能是解决问题的步骤之一或它们的组合。

  1. tag我最初推动的是,但v0.0.1在我build.gradle的 Kotlin 项目中,它version '0.0.1'没有v. 所以我将标签重命名0.0.1并推送标签。@Ricardo上面关于如何检查 JitPack 构建日志的回答非常有用!
  2. 接下来,我./gradlew install在 Kotlin 存储库中的本地机器上运行。这是 JitPack 运行的命令之一 - 请参阅JitPack 文档。当我这样做时,我发现了这条消息:Declare the version of Java your build requires
  3. 根据该消息,我决定指定 Java 版本。在build.gradle我添加的 Kotlin 项目中sourceCompatibility = 1.8
    compileKotlin {
    kotlinOptions {
    jvmTarget = "1.8"
    }
    }
  4. 重新运行步骤 2 中的命令后,Java 版本问题消失了。
  5. 我推送了我的 Kotlin 存储库的新版本并添加了一个新标签。
  6. 在 Android 项目中,我必须添加maven { url "https://jitpack.io" }in settings.gradle. build.gradle将其添加到根文件app或根文件中时遇到错误。
于 2021-02-27T03:40:16.863 回答