jitpack.io 无法解析 github repo
Posted
技术标签:
【中文标题】jitpack.io 无法解析 github repo【英文标题】:jitpack.io failed to resolve github repo 【发布时间】:2016-01-08 14:07:14 【问题描述】:我有一个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'
仍然失败。
【问题讨论】:
以防其他人落入这个陷阱:确保将maven url ...
包含在allprojects
块中,而不是buildscript
块中。
Alexander Pacha 的建议为我解决了这个问题。添加为下面的答案。
【参考方案1】:
对于犯了我犯的简单错误的其他人:
确保在allprojects
下添加maven url "https://jitpack.io"
而不是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 在上面的评论中指出这一点。
【讨论】:
同样的错误:) 谢谢你这是我的问题 对我不起作用,继续使用Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve com.github.any_jitpack_lib
@Choletski 当你第一次请求这个依赖时,Jitpack 正在构建它,所以你应该等到它完成,然后在 android studio 中点击try again
。
对于较新的 android studio 项目,此块已移至 settings.gradle,我们必须将其添加到那里。这非常有帮助,我为为什么我的仓库无法获取我的库而烦恼。非常非常非常感谢!!!!【参考方案2】:
经过几次尝试并感谢 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
【讨论】:
你是怎么解决的?因为我有同样的问题,我遵循了所有的指南,但无事可做.. @Ricardo 我无法创建新问题,请使用解决方案 @Ricardo 更新此帖子 发布您遵循的步骤 我不记得我遵循了哪些步骤。但是告诉我哪个是你的仓库并检查是什么给了你日志jitpack.io/com/github/rchampa/DropboxHttpConector/1.0.3/… 如果你在 build.log 中有一个带有发布标签的错误,你必须创建另一个标签来修复问题。 Outch,现在看起来很明显,但实际上不是......【参考方案3】:我有几个来自 Jitpack 的依赖项,我在迁移到 Gradle 2 后遇到了这个问题。
就我而言,解决方案是将gradle-wrapper.properties
中的distributionUrl
中的版本从2.10(当我接受更新包装器版本时由Studio 自动设置)更改为latest 版本。
【讨论】:
【参考方案4】:较新版本的 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"
【讨论】:
这解决了我的问题。我为此失去了理智。这个答案的评分应该更高,让更多人看到。【参考方案5】:哈利路亚我有问题!
所以我意识到问题取决于我的网络!我无法从我的 IP 访问https://jitpack.io/,这就是为什么没有任何工作。刚刚从 GSM 模块共享互联网(以获得不同的 IP),使用@SteveMellross solution 问题就解决了
也许有 0.001% 的人有同样的问题,但如果没有任何效果,请尝试访问 https://jitpack.io/ ;)
我希望只是防火墙或内部路由器错误,并且我的 IP 没有被他们的服务禁止。
【讨论】:
【参考方案6】:验证 maven url "https://jitpack.io"
是否在 build.gradle(项目)的 allprojects
部分中
【讨论】:
【参考方案7】:对我来说,我这样做了
1.Forked原始未维护的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
-
在工作室中再次同步 gradle
成功了!
这比下载repo、在我们的应用程序中作为模块导入然后使用它等要好得多。
每当您对此分叉的 repo 进行更改时,也不要忘记更新提交哈希!
【讨论】:
请注意,我最后没有按照自己的说明添加 /build.log,但它以某种方式起作用 我的情况完全相同,我尝试了不同版本的答案。在某些时候,我看到 Gradle 正在下载依赖项。但是依赖项似乎不存在。没有出现依赖项中的类。 @Delark 可能尝试使用不同的标签?有时有效【参考方案8】:当我尝试从 github 导入 orhanobut/logger 时遇到了这个问题。 然后我去 jitpack.io 并搜索包: find logger in jitpack 然后我点击日志图标,发现:
开始时间:2016 年 1 月 14 日星期四 11:56:56 UTC git:v1.9 提交 5abbc1563422457d4c23e1a0a412d2b0c7dc334e 合并:8ef1e6b 522d44d 作者:奥尔罕奥布特 日期:2015 年 5 月 25 日星期一 11:34:20 +0200
合并来自 orhanobut/oo/settings-fix 的拉取请求 #30 子模块状态: 运行 gradle 构建 Gradle 构建脚本 拿起 JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 正在下载https://services.gradle.org/distributions/gradle-2.2.1-all.zip
就是这样,它使用 gradle 2.2.1-all!
然后我去我的项目并在settings.gradle中将gradle版本更改为2.2.1,一切正常!
【讨论】:
【参考方案9】:我正在使用Android Studio Arctic Fox 2020.3.1 | Canary 8
并遇到上述问题。
我的 repo 项目是一个纯 Kotlin 项目,我想将它导入到我的 Android 项目中。
以下是我为自己解决问题的几个步骤 - 它可能是解决问题的步骤之一或它们的组合。
-
我最初推送的
tag
是v0.0.1
,但在我的Kotlin 项目的build.gradle
中,它是version '0.0.1'
,没有v
。所以我renamed the tag 到0.0.1
并推送了标签。 @Ricardo 的 answer above 关于如何检查 JitPack 构建日志非常有用!
接下来,我在 Kotlin 存储库中的本地计算机上运行 ./gradlew install
。这是 JitPack 运行的命令之一 - 请参阅 JitPack documentation。当我这样做时,我发现了这条消息:Declare the version of Java your build requires
。
根据该消息,我决定指定 Java 版本。在 Kotlin 项目中build.gradle
我添加了sourceCompatibility = 1.8
和compileKotlin
kotlinOptions
jvmTarget = "1.8"
重新运行第2步的命令后,Java版本问题消失了。
我推送了我的 Kotlin 存储库的新版本并添加了一个新标签。
在Android项目中,我不得不在settings.gradle
中添加maven url "https://jitpack.io"
。在app
或根文件的build.gradle
文件中添加它时遇到错误。
【讨论】:
【参考方案10】:我知道这是旧的,但我最近遇到了这个问题,我通过添加解决了它
maven url 'https://jitpack.io'
到dependencyResolutionManagementrepositories$HERE
下的settings.gradle(ProjectSettings)
。我不知道是推荐还是侥幸,因为我还不是很精通。
【讨论】:
以上是关于jitpack.io 无法解析 github repo的主要内容,如果未能解决你的问题,请参考以下文章