在以下任何来源中均未找到插件 [id: 'org.jetbrains.kotlin.jvm', version: '1.2.71']

Posted

技术标签:

【中文标题】在以下任何来源中均未找到插件 [id: \'org.jetbrains.kotlin.jvm\', version: \'1.2.71\']【英文标题】:Plugin [id: 'org.jetbrains.kotlin.jvm', version: '1.2.71'] was not found in any of the following sources在以下任何来源中均未找到插件 [id: 'org.jetbrains.kotlin.jvm', version: '1.2.71'] 【发布时间】:2019-03-04 21:19:16 【问题描述】:

我全新安装了 IntelliJ,我使用以下设置创建了一个新的 kotlin gradle 项目:

这会产生以下 build.gradle.kts,(完全相同的文件在我的 Windows 机器上工作):

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins 
    kotlin("jvm") version "1.2.71"


group = "com.test"
version = "1.0-SNAPSHOT"

repositories 
    mavenCentral()


dependencies 
    compile(kotlin("stdlib-jdk8"))


tasks.withType<KotlinCompile> 
    kotlinOptions.jvmTarget = "1.8"

在尝试进行 gradle 刷新时会产生此错误:

插件 [id: 'org.jetbrains.kotlin.jvm', version: '1.2.71'] 不是 在以下任何来源中找到:

Gradle 核心插件(插件不在 'org.gradle' 命名空间中) 插件存储库(无法解析插件工件 'org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.2.71') 在以下存储库中搜索: Gradle Central 插件库

【问题讨论】:

请检查“设置 | 构建... | 构建工具 | Gradle”中是否未启用“离线”选项 @y.bedrov,未启用。 你解决了吗?考虑只使用build.gradle 我对@9​​87654325@ 有同样的问题,所以我认为它与 Kotlin DSL 构建脚本(在 macos 上)无关。 我在使用 build.gradle 或 Kotlin DSL 时也遇到了同样的问题。不同的PC,相同的互联网连接它可以工作。试图使 IntelliJ 缓存无效。 【参考方案1】:

就我而言(Ubuntu 20.04),问题出在从 snap 安装的 gradle 7.2 上。

我已删除从 snap 安装的 gradle 7.2 并从 sdkman 安装 gradle 7.2。适合我。

【讨论】:

【参考方案2】:

检查您的 gradle 和 kotlin(或 Java)版本。

我遇到了同样的错误,通过在 build.gradle 中指定 kotlin 版本解决了我的问题:

之前:

plugins 
    id 'org.jetbrains.kotlin.jvm'

之后:

plugins 
    id 'org.jetbrains.kotlin.jvm' version "1.4.10"

【讨论】:

【参考方案3】:

在我的例子中,我在 Settings &gt; Build, Execution, Deployment &gt; Build Tools &gt; Gradle 中更改了 Gradle JVM,它成功了。

【讨论】:

【参考方案4】:

在我的情况下,问题是因为 Charles Proxy。关闭查尔斯后,我可以重新开始工作

【讨论】:

【参考方案5】:

我最近遇到了由Intellij Idea 自动生成的空项目的类似问题。

通过结合JavaGradle 版本解决了这个问题。

最初我有Oracle Java 8Gradle 6.8.3

经过多次尝试,我找到了一个可行的组合 - AdoptOpenJDK 11Gradle 5.6.4

【讨论】:

【参考方案6】:
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins 
//    kotlin("jvm") version "1.2.71"


group = "com.test"
version = "1.0-SNAPSHOT"

repositories 
    mavenCentral()


dependencies 
    compile(kotlin("stdlib-jdk8"))


//tasks.withType<KotlinCompile> 
//    kotlinOptions.jvmTarget = "1.8"
//
    通过注释上述行来同步。将设置 gradle。 下载 gradle 后,取消注释这些行并再次同步。 如果未正确下载依赖项,请在终端中运行“gradle build”并单击 gradle sync。

这为我解决了这个问题。

【讨论】:

欢迎来到 Stack Overflow。如果您想改进您的答案,请使用edit 按钮而不是添加评论。 Comments 应该用于询问更多信息或提出改进建议。【参考方案7】:

好的,所以答案一直很简单。出于某种原因,我激活了 gradle 的“离线工作”切换,这就是问题的原因。

要禁用它,只需转到Settings &gt; Build, Execution, Deployment &gt; Build Tools &gt; Gradle 并取消选中“离线工作”复选框。

【讨论】:

【参考方案8】:

(1) 就我而言(Ubuntu 18.04 上的 OpenJDK 11),问题是 Gradle 无法从 gradle 插件服务器下载 POM 文件。你可以通过在jshell中输入这一行来测试它:

new java.net.URL("https://plugins.gradle.org/m2/org/jetbrains/kotlin/jvm/org.jetbrains.kotlin.jvm.gradle.plugin/1.3.11/org.jetbrains.kotlin.jvm.gradle.plugin-1.3.11.pom").openStream()

(您可以通过使用 --debug 选项运行 gradle 来找到您的网址)

所以如果你收到这样的异常:InvalidAlgorithmParameterException: trustAnchors parameter must be non-empty 那么问题是CA-certs cache。这可以通过将这些行写入 bash Ref 来轻松修复:

sudo su
/usr/bin/printf '\xfe\xed\xfe\xed\x00\x00\x00\x02\x00\x00\x00\x00\xe2\x68\x6e\x45\xfb\x43\xdf\xa4\xd9\x92\xdd\x41\xce\xb6\xb2\x1c\x63\x30\xd7\x92' > /etc/ssl/certs/java/cacerts
/var/lib/dpkg/info/ca-certificates-java.postinst configure

顺便说一句,在重试之前不要忘记重新启动 gradle 守护程序。 (gradle --stop)

(2) 另一个原因可能是您的互联网无法访问bintray.com(伊朗或中国的互联网),您可以将此行放在jshell 上进行测试:

new java.net.URL("https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.3.11/kotlin-gradle-plugin-api-1.3.11.pom").openStream()

如果您收到连接超时,则证实了这一理论。在这种情况下,您需要购买并连接代理/*** 才能下载这些依赖项。

【讨论】:

谢谢,没有详细级别的 gradle 会指出证书没有被识别,因为我可以从浏览器中获取 pom,所以我不知道它为什么不起作用。像你建议的那样从 jshell 测试它对我来说很清楚。我只是不明白为什么我的 JVM 突然决定它不信任主要的 gradle 插件存储库...... Java 很痛苦【参考方案9】:

检查您的互联网连接并确保您的互联网不受限制。

我通过使用 *** 应用为所有隧道(不仅仅是 HTTP)打开代理解决了这个问题。

【讨论】:

以上是关于在以下任何来源中均未找到插件 [id: 'org.jetbrains.kotlin.jvm', version: '1.2.71']的主要内容,如果未能解决你的问题,请参考以下文章

在以下任何来源中都找不到插件 [id: 'org.sonarqube', version: '2.8']:

在以下任何来源中都找不到插件 [id: 'org.springframework.boot', version: '2.2.4.RELEASE']:

成功检出 svn 文件,但在导航器和源代码控制实用程序区域中均未显示 SCM 状态

为经典的 asp 站点启用日志记录

插件 [id: 'org.springframework.boot', version: '2.0.2.RELEASE'] 未找到

未找到 ID 为“org.sonarqube”的插件