如何在 Ubuntu 上运行 Kotlin?

sle*_*epy 4 linux ubuntu kotlin

我刚刚使用以下命令在 Ubuntu 上安装了 Kotlin,

curl -s https://get.sdkman.io | bash
sdk install kotlin
Run Code Online (Sandbox Code Playgroud)

它安装了以下几行,

Downloading: kotlin 1.3.61

In progress...

######################################################################################################## 100.0%

Installing: kotlin 1.3.61
Done installing!
*************************************************************
Run Code Online (Sandbox Code Playgroud)

但是当我尝试执行文件时,它不起作用。

comp@ubuntu:~$ kotlin --version
/home/comp/.sdkman/candidates/kotlin/current/bin/kotlinc: line 80: java: command not found

comp@ubuntu:~$ chmod +x test.kt 
comp@ubuntu:~$ kotlinc test.kt -include-runtime -d hello.jar
/home/comp/.sdkman/candidates/kotlin/current/bin/kotlinc: line 80: java: command not found

comp@ubuntu:~$ which kotlinc
/home/comp/.sdkman/candidates/kotlin/current/bin/kotlinc
Run Code Online (Sandbox Code Playgroud)

文件“/home/comp/.sdkman/candidates/kotlin/current/bin/kotlinc”的第80行如下,

"${JAVACMD:=java}" $JAVA_OPTS "${java_args[@]}" -cp "${kotlin_app[@]}" "${kotlin_args[@]}"
Run Code Online (Sandbox Code Playgroud)

可能是什么问题?某些 Java 组件有问题?谢谢。

lig*_*igi 5

您还需要安装 java - 试试这个:

apt install default-jre
Run Code Online (Sandbox Code Playgroud)


小智 5

您可以使用snap轻松安装软件包及其所有依赖项:

sudo snap install --classic kotlin
Run Code Online (Sandbox Code Playgroud)

现在使用 Kotlin 编译器进行编译kotlinc

kotlinc test.kt -include-runtime -d test.jar
Run Code Online (Sandbox Code Playgroud)

-d选项指示生成的类文件的输出路径,它可以是目录或 .jar 文件。该-include-runtime选项通过在其中包含 Kotlin 运行时库,使生成的 .jar 文件自包含并可运行。

现在运行应用程序:

java -jar test.jar
Run Code Online (Sandbox Code Playgroud)

对于任何帮助,请使用:

kotlinc -help
Run Code Online (Sandbox Code Playgroud)

有关版本信息:

kotlin -version
Run Code Online (Sandbox Code Playgroud)