【发布时间】:2021-02-12 01:42:50
【问题描述】:
我是 linux 和 java 编程的新手,我一直在尝试运行一个测试程序,但它工作的唯一方法是完全覆盖 PATH。 这是我在 .bashrc 中设置的路径:
export PATH=:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/jdk-15.0.1/bin:
还有 JAVA_HOME:
export JAVA_HOME=:/usr/lib/jvm/jdk-15.0.1:
当我这样运行它时,我收到以下错误:“Error: LinkageError occurred while loading main class FirstJavaProgram java.lang.UnsupportedClassVersionError: FirstJavaProgram has been compiled by a more recent version of the Java Runtime (class file version 59.0), this version of the Java Runtime only recognizes class file versions up to 55.0”。
但是,当我只覆盖/usr/lib/jvm/jdk-15.0.1/bin 的路径时,它会运行程序。
我必须以不同的方式设置 PATH 吗?
【问题讨论】:
-
路径的早期元素中的某处可能还有另一个 java 安装。尝试将您的 java 文件夹设置为第一个条目。
-
which java可以知道命令的位置
标签: java linux compiler-errors path