【问题标题】:IntelliJ IDEA having problem with Kotlin Gradle dependencyIntelliJ IDEA 在 Kotlin Gradle 依赖方面存在问题
【发布时间】:2021-08-07 01:00:25
【问题描述】:

所以,我正在将我的一些项目从 Java 重写为 Kotlin,因为我对这种语言总体上更熟悉,而且我偶然发现了我的 IDE (InteliJ IDEA Ultimate) 的一个小问题。

我在 GitHub 上将我的一个库发布到公共 repo 并使用 GradleJitPack 将其用作其他项目的依赖项,它会下载并包含在“外部库”

但是我无法在我的 .kt 文件中使用它。 (IDE 显示 “未解析的引用” 错误。) https://i.stack.imgur.com/qFDWN.png

当我尝试在 Java 中做同样的事情时,这不会发生。 (同一个项目)https://i.stack.imgur.com/NV22F.png


build.gradle.kts

repositories {
    mavenCentral()
    maven {
        name = "papermc-repo"
        url = uri("https://papermc.io/repo/repository/maven-public/")
    }
    maven { 
        name = "jitpack"
        url = uri("https://www.jitpack.io") 
    }
}

dependencies {
    testImplementation(kotlin("test-junit"))

    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")

    compileOnly("com.destroystokyo.paper:paper-api:1.16.5-R0.1-SNAPSHOT")
    implementation("com.github.ThePlay3r:PLJRApi-Spigot:563362408c")
}

这很令人沮丧,因为我对 Kotlin 感到非常兴奋,但这让我无能为力。 有谁知道如何修复这个问题,或任何替代方法来将库添加到我的项目中?

【问题讨论】:

  • 我以前见过类似的问题。检查并查看两个项目是否使用相同的 Java 版本编译。另请注意:您没有必须将 Kotlin Gradle (build.gradle.kts) 用于支持 Kotlin 的项目;在顶部添加 Kotlin 插件后,普通 Gradle (build.gradle) 也足够了。

标签: java kotlin gradle intellij-idea


【解决方案1】:

显然,这是一个已知问题,已在此处报告和跟踪:https://youtrack.jetbrains.com/issue/KT-25709

我当前的临时修复是排除 shadowJar 任务中的一些 kotlin 文件。

tasks.named<ShadowJar>("shadowJar") {
    exclude("**/*.kotlin_metadata")
    exclude("**/*.kotlin_module")
    exclude("**/*.kotlin_builtins")
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-10
    • 2015-02-25
    • 1970-01-01
    • 1970-01-01
    • 2018-03-06
    • 1970-01-01
    • 2019-11-09
    • 1970-01-01
    相关资源
    最近更新 更多