当前位置: 首页 > 知识库问答 >
问题:

Javac版本不更新

阎承
2023-03-14

我试图用1.8作为目标版本在mac上编译一个jar,但是javac失败了,消息是“目标版本无效”。

echo$path/usr/local/bin://usr/bin://bin://usr/sbin://sbin://usr/local/bin://usr/local/mysql/bin://opt/x11/bin://usr/local/html" target="_blank">git/bin://developer/tools/panda3D

echo$java_home(因为为了让javac工作,我已经设置了它)/library/java/javavirtualmachines/jdk1.8.0_40.jdk/contents/home/

将/library/java/javavirtualmachines/jdk1.8.0_40.jdk/contents/home/bin/预置到$path变量也没有改变javac版本的输出。

更新2

另一个问题:javac是做什么的?它是直接执行它的代码还是依赖于系统中的其他二进制文件?如果是这样,他们的联系可能会中断。否则,我想知道为什么在1.8jdk文件夹中执行二进制文件会得到1.6版本。

共有1个答案

孙洋
2023-03-14

Debian/Ubuntu配置/usr/bin/javac指向哪个javac的正确方法是使用update-alternatives命令。您可以通过交互方式进行,并从可用选项列表中选择:

sudo update-alternatives --config javac

对于Java:

sudo update-alternatives --config java
 类似资料:
  • 我用java命令和javac命令设置了不同的java版本。 路径设置为1.6,但它是选择1.8。建议我如何解决这个问题。

  • 几年前我安装了Java版本10.0.2,但为了特定的目的需要将其更新到11.0.2(不是最新的版本13.0.2,我需要它是11.0.2)。 下载JDK-11.0.2之后,我打开了环境变量窗口,并进行了如下更改。 添加新路径

  • 我最近下载了与NetBeans捆绑在一起的JDK1.8.0.006。然后我发现我一直在用Java1.7开发的JavaFx项目不会用Java1.8编译,所以我把JDK降到了1.7。但我还是无法让它运行/编译。我得到了这个错误: 我真的被困住了,非常感谢您的帮助。

  • v2.0.9[2020-4-12] 修复(Fixed): 修复 MySQL 8.0 生成实体主键位置错误 e437d36 更新(Update): 连接池关闭连接, 如果连接已经断开, 异常将会被忽略 7aac80da 增强(Enhancement): v2.0.8[2020-1-18] 修复(Fixed): 修复 ws server 的 message response.finish 兼容 swo

  • 网防G01最新版本为:Linux版本:3.0.63.10,Windows版本:3.1.18.6,PC客户端版本:3.1.18。 更新记录: 2020年03月30日 2018年11月06日 2018年05月15日 2017年10月10日 2017年07月21日 2020年3月30日,更新说明 Linux版本:3.1.20.15 Windows版本:3.1.20.15 PC客户端版本:3.1.20.1

  • 2018-06-19:更新 Homestead 版本到 v7.8.0; 2018-06-17:更新 Homestead 等虚拟机软件到最新;