mra*_*tor 54 android maven android-gradle-plugin
尝试编译我的应用程序时出现以下错误:
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':myProject'.
> Could not resolve all files for configuration ':myProject:classpath'.
> Could not find org.jetbrains.trove4j:trove4j:20160824.
Searched in the following locations:
https://repo1.maven.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
https://repo1.maven.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.jar
https://maven.fabric.io/public/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
https://maven.fabric.io/public/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.jar
https://maven.google.com/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
https://maven.google.com/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.jar
Required by:
project :metam > com.android.tools.build:gradle:3.0.0-beta2 > com.android.tools.build:gradle-core:3.0.0-beta2 >
com.android.tools.lint:lint:26.0.0-beta2 > com.android.tools.lint:lint-checks:26.0.0-beta2 > com.android.tools.lint:lint-
api:26.0.0-beta2 > com.android.tools.external.com-intellij:intellij-core:26.0.0-beta2
Run Code Online (Sandbox Code Playgroud)
它似乎缺少IDE所需的库?
Sni*_*las 102
可以通过在buildscript部分中添加jcenter()作为存储库来解决此问题.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-beta2'
}
}
Run Code Online (Sandbox Code Playgroud)
Bam*_*omy 52
除了Snicolas回答:
如果你有类似的东西:
allprojects {
repositories {
mavenCentral()
google()
jcenter() //also add it here!!!
}
}
Run Code Online (Sandbox Code Playgroud)
在你的build.gradle档案中; 也加在那里.
Coo*_*ind 15
由于 jCenter 将 在 May关闭,您应该更改为root/build.gradle:
buildscript {
repositories {
google()
gradlePluginPortal()
}
}
allprojects {
repositories {
google()
mavenCentral()
// org.jetbrains.trove4j:trove4j:20160824.
gradlePluginPortal()
}
}
Run Code Online (Sandbox Code Playgroud)
另请参阅/sf/answers/4631799441/以添加未包含在 Maven 中的库。
现在我们可以无错误地构建 apk。
如果您在 2021 年 5 月 1 日之后看到此错误,则可能是因为jcenter 已关闭。Android Gradle 插件 (AGP) 需要它。谷歌开发人员表示,他们正在使用从mavenCentral()AGP 7开始的更新版本的库,并希望将其移植到 AGP 4.2 和 4.1 中。所以首先,尝试升级到 AGP 7。如果我没有用更新编辑这篇文章,请检查它是否在任何较低的 AGP 版本中。
但是,如果您无法升级 AGP,那么在最初发布时(2021 年 2 月),我能找到的唯一带有 trove 软件包的存储库是在 pentaho 上,它似乎归 Hitachi 所有,所以我认为它是安全的。
buildscript {
repositories {
maven { url "https://nexus.pentaho.org/content/groups/omni" }
}
dependencies {
classpath 'org.jetbrains.trove4j:trove4j:20160824'
}
}
Run Code Online (Sandbox Code Playgroud)
这不是一个理想的解决方案。据我所知,这个 repo 可能是私有的。寻找可能在我之后发布的更好答案。
小智 7
我解决了在 build.gradlew 中删除的这个问题
repositories {
jcenter()
}
Run Code Online (Sandbox Code Playgroud)
并将 mavenCentral() 更改为 jcenter() 并删除 google()
从 jcenter 迁移? jcenter 将于5 月 1 日日落
如果您要从 jcenter 迁移,您可能会遇到此问题。发生此问题是因为 Trove4j 库是从 jcenter 获取的,而您在从 jcenter 迁移时删除了 jcenter 存储库。
解决方案:
将以下内容添加到项目 build.gradle 中:
maven { url 'https://plugins.gradle.org/m2/' }
Run Code Online (Sandbox Code Playgroud)
它应该添加到:
build.gradle(peoject) -> buildscript -> 存储库
build.gradle(peoject) -> allprojects -> 存储库
buildscript {
repositories {
google()
mavenCentral()
// ** Add this line **
maven { url 'https://plugins.gradle.org/m2/' }
}
}
allprojects {
repositories {
google()
mavenCentral()
// ** Add this line **
maven { url 'https://plugins.gradle.org/m2/' }
}
}
Run Code Online (Sandbox Code Playgroud)
由于 jcenter 将于 2021 年 5 月 1 日停用。应该从项目中删除 jcenter 存储库。这意味着应该删除所有出现在“jcenter()”的地方。这可能会导致 jcenter 托管的库出现问题。您应该提供另一个托管库的存储库,例如 maven。一些未维护的库可能不会移动到任何其他存储库。在这种情况下,您可能需要考虑为库打开一个问题或不使用它。您将在 5 月 1 日面临所有这些问题,如果您现在不进行迁移,您可能无法构建您的应用程序。
| 归档时间: |
|
| 查看次数: |
23819 次 |
| 最近记录: |