我按照此处的指南this link
在Ubuntu 16.04中安装kotlin和JDK之后创建了一个文件Hello.kt,
但是当我运行时,
kotlinc Hello.kt -include-runtime -d Hello.jar
我收到了这个错误
error: no class roots are found in the JDK path: /usr/lib/jvm/java-9-openjdk-amd64
这是我第一次这么基本上我不知道该怎么做。
你有吗?答案 0 :(得分:5)
Ubuntu 16.04在基本存储库中没有Kotlin,因此默认的Java安装不太可能支持Kotlin。
如果您使用SDKMAN!要安装Kotlin,您可能需要使用SDKMAN!安装Java。
sdk install java
sdk install kotlin
确认您没有使用Ubuntu-stock Java ...
$ which java
~/.sdkman/candidates/java/current/bin/java ## you should see '.sdkman' in the path here
答案 1 :(得分:2)
对我来说,这是因为brew upgrade
删除了一个jdk版本而改用另一个。
与此同时,Gradle已缓存了对jdk版本的引用。
我通过删除gradle缓存(rm -r .gradle
)并重新编译解决了该问题。
答案 2 :(得分:0)
我认为问题出在您的java版本上。移除现有的jdk并重新安装最新的jdk并正确设置jdk路径它将解决您的问题。