You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows子系统Ubuntu运行Kotlinc 1.8.0遇Java命令未找到问题求助

问题分析

你是在WSL(Windows子系统 for Linux)环境下执行的Kotlinc脚本(错误路径里的/mnt/c是WSL挂载Windows磁盘的标识)。尽管Windows系统里配置了Java的PATH,但WSL是独立的Linux环境,它的环境变量与Windows不共享,因此脚本找不到WSL环境内的Java。

解决步骤

1. 检查WSL是否已安装Java

打开WSL终端,执行:

java -version

如果提示command not found,说明WSL内未安装Java,需在WSL中安装与Windows版本兼容的JDK(建议和你Windows里的16.0.2版本一致,或兼容Kotlin 1.8.0的版本)。

以Ubuntu WSL为例安装OpenJDK 16:

# 更新软件源
sudo apt update
# 安装OpenJDK 16
sudo apt install openjdk-16-jdk
# 验证安装结果
java -version
javac -version

2. 配置WSL的JAVA_HOME环境变量

若WSL已安装Java但仍报错,说明Kotlinc脚本无法通过环境变量定位Java,需手动配置JAVA_HOME:

  1. 查找JDK安装路径:
readlink -f /usr/bin/java | sed "s:/bin/java::"

输出路径即为JDK根目录,例如/usr/lib/jvm/java-16-openjdk-amd64。

  1. 将JAVA_HOME添加到WSL的环境变量:
    编辑~/.bashrc文件:
nano ~/.bashrc

在文件末尾添加:

export JAVA_HOME=/usr/lib/jvm/java-16-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

保存退出后,执行以下命令使配置生效:

source ~/.bashrc

3. 验证修复效果

重新执行Kotlinc命令测试:

kotlinc main.kt -include-runtime -d main.jar

或执行kotlinc help确认是否仍报错。

额外提醒:你当前显示的Kotlinc版本是1.5.21,但安装的是1.8.0,可能是WSL内存在旧版本或环境变量优先指向了旧版本。可执行which kotlinc查看当前使用的Kotlinc路径,确保指向你安装的1.8.0版本脚本。

内容的提问来源于stack exchange,提问作者benji

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 08:20:49