为了在Eclipse中创建我的第一个简单的Kotlin项目,我遵循了Kotlin官方网站上Getting Started with Eclipse Luna教程中的步骤,即:
- 从Eclipse Marketplace安装Eclipse的Kotlin插件
- 打开Kotlin透视图并创建一个Kotlin项目
- 使用
main
方法在“src”文件夹中创建了文件“hello.kt - 右键单击文件〉运行方式〉Kotlin应用程序
但是,我在Eclipse控制台中不断收到以下错误:
错误:无法找到或加载主类HelloKt
我仔细检查了项目的Run Configuration,它确实将“Main class”设置为HelloKt
(我100%确定它不存在)。此外,当我点击“Search”按钮时,Eclipse找到的唯一项是HelloKt - (default package)
(同样,它不存在)。
为完整起见,请在下面查找hello.kt
文件的代码:
fun main(args: Array<String>) {
println("Hello, World")
}
我注意到教程和我所做的有以下不同之处:
- 我使用的是不同的Eclipse版本(教程建议使用Luna;我用的是Mars.2)。
- 我使用的是不同的JDK版本(教程没有建议任何特定的版本,但从图片中,我们可以看到他们使用的是
jdk1.6.0_45
,而我使用的是jdk1.7.0_79
。
请注意,我使用的是最新版本的KotlinEclipse插件,因此这与this post中的情况不同。
- Kotlin0.7.2版20160930 -0748
- Kotlin-Eclipse-政策0.7.2.v20160928-1525
- Kotlin-编织-功能0.7.2.v20160928-1525
在运行应用程序时,这些差异是否会导致错误?
您是否发现/知道有关此场景的任何潜在原因或已知错误?
更新(2017年5月14日)
使用Eclipse Neon.3进行尝试(Eclipse.构建ID =4.6.3.M20170301-0400),JDK 1.8.0_111,Kotlin0.8.2.v20170314-0957(kotlin-eclipse策略0.8.2.v20170314-0957、kotlin-weaving功能0.8.2.v20170314-0957、Equinox Weaving SDK 1.2.0.201701131634)。该问题仍然存在。
8条答案
按热度按时间dvtswwa31#
尝试新的
Kotlin File
而不是Kotlin Class
:6mzjoqzu2#
对我来说,这只发生过一次。我认为这是Kotlin插件的一些小故障,当你第一次创建一个Kotlin文件并尝试运行它。尝试“新Kotlin类”粘贴相同的内容,看看它是否工作。之后,你应该可以运行这两个文件,因为它发生在我身上。
bhmjp9jg3#
我得到了同样的问题,因为你。我尝试了很多方法,但不工作(如卸载插件,然后再次安装插件,删除项目,并创建新的项目...)
**如何修复:**我创建了一个新的工作区,并再次设置了helloworld项目。我看到生成了那个类文件,我可以正常运行它。
请注意,我们创建了新的工作区而不是项目。我注意到工作区包含.metadata文件夹,其中可能有很多Eclipse的信息。
zzwlnbp84#
我遇到了同样的问题,它通过删除JAVA_HOME环境变量来解决。
我设置了一个旧的JDK文件夹,但在JAVA_HOME环境变量中删除了该文件夹。
ar5n3qh55#
已尝试使用Java 8(1.8.0_144)和Eclipse Oxygen.1a发布版本(4.7.1a -构建ID 20171005-1200)以及以下插件版本:
一切按预期运行,无需创建单独的工作空间和/或使用
Kotlin File
代替Kotlin Class
:d6kp6zgx6#
这对我来说很有用....如果你去窗口-〉显示视图-〉导航器它会显示你工作区的物理布局而不是包资源管理器的逻辑视图。右键单击定义了主函数的Kotlin文件,然后单击运行方式-〉Kotlin应用程序。对我来说很有用,虽然我很想使用常规的运行配置,但这就是生活.....
2g32fytz7#
1.转到Windows-〉显示视图-〉导航器
1.编辑
.project
文件,仅更改以下部分以将Kotlin文件编译到与Java文件相同的位置。请记住:
1.我已经注解掉了
name
标记。否则,Kotlin编译器会创建src文件夹kotlin_bin
,并将您的kotlin文件放在该文件夹中,而kotlin运行时将找不到它。1.我的java项目的名字是
FindUniqueStrings
,你的名字会不同。1.通过在
Navigator
视图中找到java类文件,仔细检查这些文件是否已编译到项目的bin文件夹中。blmhpbnm8#
kotlinc main.kt下次,它会像普通的java文件一样用ctrl+f11运行。如果你创建一个没有类的Kotlin文件,它会运行。