Не удалось запустить приложение Kotlin в Eclipse

чтобы создать свой первый, простой проект Kotlin в Eclipse, я выполнил шаги в начало работы с Eclipse Luna учебник с официального сайта Kotlin, т. е.:

  • установите плагин Kotlin для Eclipse от Eclipse Marketplace
  • откройте перспективу Котлина и создайте проект Котлина
  • создан файл " Здравствуйте.kt "внутри папки" src " с main метод
  • щелкните правой кнопкой мыши файл > выполнить As > Приложение Котлин

однако я продолжаю получать следующую ошибку в консоли Eclipse:

ошибка: не удалось найти или загрузить основной класс HelloKt

Я дважды проверил конфигурацию запуска для моего проекта, и он устанавливает "основной класс" как HelloKt (который я на 100% уверен, что это не существует). Кроме того, когда я нажимаю кнопку "Поиск", единственным элементом, который находит Eclipse, является HelloKt - (default package) (который, опять же, не существовать.)

для полноты, найти ниже код для :

fun main(args: Array<String>) {
    println("Hello, World")
}

я заметил следующие расхождения между учебником и тем, что я сделал:

  • я использую другую версию Eclipse (учебник предлагает Luna; я использую Mars.2).
  • я использую другую версию JDK (учебник не предлагает какой-либо конкретной версии, но из изображений мы видим, что они использовали jdk1.6.0_45, пока я использую jdk1.7.0_79.

обратите внимание, что я использую последнюю версию плагина Kotlin Eclipse, поэтому это не тот же случай, что и в этот пост. Это версии в моей текущей установке:

  • Котлин 0.7.2.v20160930-0748
    • Котлин-затмение-политика 0.7.2.v20160928-1525
    • Котлин-соткать-характеристика 0.7.2.v20160928-1525

может ли любое из этих расхождений быть причиной ошибка при запуске приложения?

вы видите / знаете какую-либо потенциальную причину или известную ошибку в отношении этого сценария?


обновление (14 мая 2017)

пробовал с Eclipse Neon.3 (затмение.buildId=4.6.3.M20170301-0400), JDK 1.8.0_111, Kotlin 0.8.2.v20170314-0957 (Котлин-затмение-политика 0.8.2.v20170314-0957, Котлин-соткать-характеристика 0.8.2.v20170314-0957, Equinox Weaving SDK 1.2.0.201701131634). проблема упорствует.

6 ответов


попробовать новый Kotlin File вместо Kotlin Class:

example


для меня это произошло только один раз. Я думаю, что это какой-то глюк из плагина Kotlin, когда вы сначала создаете файл Kotlin и пытаетесь запустить его. Попробуйте" новый класс Kotlin " вставить тот же контент и посмотреть, работает ли он. После этого вы сможете запустить оба файла, как это случилось со мной.


У меня те же проблемы, что и у вас. Я пробовал много способов, но не работал (например, удалить плагин, затем снова установить плагин, удалить проект и создать новый проект...)

как исправить: Я создал новое рабочее пространство и снова настроил проект helloworld. Я вижу, что файл класса сгенерирован, и я могу запустить его нормально.

обратите внимание, что мы создаем новое рабочее пространство, а не проект. То, что я замечаю, содержит workspace .папка метаданных, которая может содержать много информации для Затмение.


У меня была такая же проблема, он решается путем удаления переменной среды JAVA_HOME.

Я установил старую папку JDK, которую я удалил в переменной среды JAVA_HOME.


пробовал с Java 8 (1.8.0_144) и Eclipse Oxygen.1A релиз (4.7.1 a - build id 20171005-1200) со следующими версиями плагинов:

  Kotlin    0.8.2.v20170314-0957    org.jetbrains.kotlin.feature.feature.group  JetBrains
    kotlin-eclipse-policy   0.8.2.v20170314-0957    org.jetbrains.kotlin.policy.feature.group   JetBrains
    kotlin-weaving-feature  0.8.2.v20170314-0957    org.jetbrains.kotlin.weaving.feature.feature.group  JetBrains

все работало как и ожидалось, без необходимости создавать отдельное рабочее пространство и / или использовать Kotlin File вместо Kotlin Class:

enter image description here


Это работает для меня.... Если вы идете в окно - > показать вид - > навигатор Он показывает скорее физический макет рабочей области, а не логическое представление проводника пакетов. Щелкните правой кнопкой мыши файл kotlin с определенной основной функцией и выберите Run As - > Kotlin Application. Работал на меня, хотя я бы убил, чтобы иметь возможность использовать обычную конфигурацию запуска, но такова жизнь.....