33

我全新安装了 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' 命名空间中)
  • Plugin Repositories (could not resolve plugin artifact 'org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.2.71') 在以下存储库中搜索:Gradle Central Plugin Repository
4

10 回答 10

7

Check your Internet connection and make sure your Internet is not restricted.

I solved this problem by turning on proxy for all tunnels (not just HTTP) with a VPN app.

于 2018-10-22T03:27:31.913 回答
4

(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()

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

因此,如果您收到这样的异常: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()

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

于 2018-12-25T11:08:56.173 回答
4
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"
//}
  1. 通过注释上述行来同步 gradle 。将设置gradle。
  2. 下载 gradle 后,取消注释这些行并再次同步。
  3. 如果未正确下载依赖项,请在终端中运行“gradle build”并单击 gradle sync。

这为我解决了这个问题。

于 2020-04-07T16:25:59.100 回答
2

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

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

于 2019-06-10T17:15:49.020 回答
1

就我而言,问题是因为Charles Proxy。关闭查尔斯后,我可以重新开始工作

于 2021-06-29T23:20:36.320 回答
1

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

我已经删除了从 snap 安装的 gradle 7.2 并从sdkman安装了 gradle 7.2 。对我来说很好。

于 2021-09-27T09:28:56.797 回答
0

我最近对一个由Intellij Idea.

Java通过组合和Gradle版本解决了这个问题。

最初我Oracle Java 8Gradle 6.8.3.

经过几次尝试,我找到了一个有效的组合 -AdoptOpenJDK 11并且Gradle 5.6.4

于 2021-03-31T23:27:15.383 回答
0

就我而言,我更改了 Gradle JVMSettings > Build, Execution, Deployment > Build Tools > Gradle并且它起作用了。

于 2021-07-28T16:38:04.790 回答
0

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

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

前:

plugins {
    id 'org.jetbrains.kotlin.jvm'
}

后:

plugins {
    id 'org.jetbrains.kotlin.jvm' version "1.4.10"
}
于 2021-08-23T12:46:11.123 回答
0

如果您像我一样使用 java。我通过添加以下内容解决了这个问题:

根梯度

dependencies {
        ext.kotlin_version = '1.4.10'

        classpath "com.android.tools.build:gradle:7.0.4"
        classpath "com.google.dagger:hilt-android-gradle-plugin:2.38.1"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

        ......
    }

应用程序 gradle 文件

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    id 'dagger.hilt.android.plugin'
}

    dependencies {
        implementation "com.google.dagger:hilt-android:2.38.1"
        kapt "com.google.dagger:hilt-compiler:2.38.1"
        ......

    }
于 2022-01-23T20:31:00.857 回答