eclipse - 在 Eclipse 上通过 gradle 设置 Kotlin

标签 eclipse gradle kotlin

努力让 Kotlin 在 Eclipse 上运行。

我已经开始了新的 graddle 项目。按照 kotlin 站点上的规定添加了依赖项。

构建过程没有错误。

我在 src/java/main 下创建了“main.kt”文件:

fun main(args: Array<String>) {
    println("foo")
}

但是,我有两个问题: 1. 任何来自 kotlin 的东西,例如println 突出显示为“未解析的引用”。 2. 我无法运行程序 - 错误:无法找到或加载主类 MainKt(右键单击 main.kr 作为“kotlin 应用程序”运行)

如果我创建“新的 kotlin 项目”,一切都会正常。

我的 graddle 构建脚本:

plugins {
    id "org.jetbrains.kotlin.jvm" version "1.1.2-2"
}

repositories {

    jcenter()

    mavenCentral()
}


dependencies {

    //api 'org.apache.commons:commons-math3:3.6.1'


    implementation 'com.google.guava:guava:21.0'


    testImplementation 'junit:junit:4.12'

    compile "org.jetbrains.kotlin:kotlin-stdlib:1.1.2-2"
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre8"

    compile "org.jetbrains.kotlin:kotlin-reflect"
    testCompile "org.jetbrains.kotlin:kotlin-test"
    testCompile "org.jetbrains.kotlin:kotlin-test-junit"

}

sourceSets {
    main.java.srcDirs = ['src/main/java']
    main.kotlin.srcDirs = ['src/main/java', 'src/main/kotlin']
    main.resources.srcDirs = ['src/main/resources']
}

我做错了什么?

如果有帮助的话,我的 Java 知识为零,所以我可能犯了一些小错误。

更新:

安装了 Spring 插件并通过它生成了一个新的 Web 应用程序(包括 gradle)。 但 Kotlin 在那里的行为也难以预测。

起初我无法将其作为作为 Kotlin 应用程序运行运行,并且出现错误,找不到main,但有时它会立即运行并崩溃。在我删除和编辑类、尝试在其他包下创建它、删除和添加 Kotlin(我无法重现序列以使其再次工作)后,它开始启动并崩溃。

有趣的部分是,gradle boot build 会启动所有内容,并且所有内容都会以某种方式找到 Kotlin 的 main.js 文件。

可能是 Kotlin 插件本身存在一些问题(它的加载可能取决于某些并不总是触发的事件)

最佳答案

将以下内容添加到您的配置中:

apply plugin: 'eclipse'
eclipse {
    classpath {
        containers 'org.jetbrains.kotlin.core.KOTLIN_CONTAINER'
    }
}

参见https://gitlab.com/frnck/kotlin-gradle-eclipse用于工作配置。

关于eclipse - 在 Eclipse 上通过 gradle 设置 Kotlin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44266042/

相关文章:

java - 用于多语言开发的 Eclipse IDE 设置

android - 要面向 Android 30,最低需要哪些 Android Studio Gradle/插件版本?

java - 如何在 Kotlin 的 groupBy 中展平列表值列表

android - RemoteServiceException 在 MIUI 11 上使我的应用程序崩溃

eclipse - 更新sts或安装扩展时出现问题

java - 错误 : Error: No resource found that matches the given name (at 'resource' with value '@xml/device_filter' )

android - 无法解析 Maven 库

gradle - JavaFX gradle 资源( bundle )

Kotlin 内联扩展属性

android - 尝试将字符串从 Android 模拟器发送到网络服务