linux 使用alternatives 切换Java版本
2015-04-16 18:10
337 查看
xception in thread "main" java.lang.UnsupportedClassVersionError: M : Unsupported major.minor version
在linux上编译的java程序,在运行的时候报这个错误。
经过查找原来是javac的版本和java的版本不一致导致的,
因为我机器上安装了系统自带的java-1.5.0-gcj和1.7.0的openjdk,另外我还自己安装了1.8.0的Oracle 官方的jdk
导致编译器的版本和运行器的版本不一致。
解决这个问题的方法是使用alternatives 切换默认的java命令
这个工具的大概原理是
在/usr/bin目录下创建一个符号链接,指向/etc/alternatives/ 下的的文件,而该文件依然是一个符号链接,举个栗子
/etc/alternatives/java会指向最终的可执行文件,如果你有3个版本的java
就需要运行
如果这个列表里面没有你想要的而且已经安装了的程序,就需要添加 命令为
这个命令实际操作的是 /var/lib/alternatives目录下对应的文件
alternatives的安装删除显示等操作都是通过读取和修改这个目录下的文件实现的,而且是文本文件,感兴趣的可以取阅读一下
在linux上编译的java程序,在运行的时候报这个错误。
经过查找原来是javac的版本和java的版本不一致导致的,
因为我机器上安装了系统自带的java-1.5.0-gcj和1.7.0的openjdk,另外我还自己安装了1.8.0的Oracle 官方的jdk
导致编译器的版本和运行器的版本不一致。
解决这个问题的方法是使用alternatives 切换默认的java命令
这个工具的大概原理是
在/usr/bin目录下创建一个符号链接,指向/etc/alternatives/ 下的的文件,而该文件依然是一个符号链接,举个栗子
[root@node1 mec]# ll /usr/bin/java lrwxrwxrwx. 1 root root 22 4月 16 16:06 /usr/bin/java -> /etc/alternatives/java
[root@node1 mec]# ll /etc/alternatives/java lrwxrwxrwx. 1 root root 26 4月 16 16:06 /etc/alternatives/java -> /usr/java/default/bin/java
/etc/alternatives/java会指向最终的可执行文件,如果你有3个版本的java
就需要运行
[root@node1 mec]# alternatives --config java 共有 3 个程序提供“java”。 选择 命令 ----------------------------------------------- 1 /usr/lib/jvm/jre-1.5.0-gcj/bin/java * 2 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java + 3 /usr/java/default/bin/java 按 Enter 来保存当前选择[+],或键入选择号码:然后选择你想要选择的选项保存就好了
如果这个列表里面没有你想要的而且已经安装了的程序,就需要添加 命令为
alternatives --install /usr/bin/java java /usr/java/default/bin/java 500
这个命令实际操作的是 /var/lib/alternatives目录下对应的文件
alternatives的安装删除显示等操作都是通过读取和修改这个目录下的文件实现的,而且是文本文件,感兴趣的可以取阅读一下
相关文章推荐
- linux 使用alternatives 切换Java版本
- linux下使用update-alternatives切换java版本的正确姿势
- linux使用update-alternatives切换java版本
- linux使用update-alternatives切换java版本
- linux下使用update-alternatives切换java版本的正确姿势
- Linux中使用alternatives切换Jdk版本
- Linux使用update-alternatives进行软件版本切换
- Centos使用alternatives切换Java版本
- 【Linux】使用update-alternatives命令进行版本的切换
- 使用update-alternatives 命令修改Java版本-自动切换Java版本
- 使用update-alternatives 命令修改Java版本-自动切换Java版本
- 【Linux】使用update-alternatives命令进行版本的切换
- 使用alternatives切换red hat linux的jdk版本
- arm-linux-gcc不同版本交叉编译器的切换使用
- 使用update-alternatives切换ubuntu下默认java命令
- [原]使用linux的alternatives管理多版本的软件
- 切换linux中的当前java环境版本
- [转]使用linux的alternatives管理多版本的软件
- 使用linux的alternatives管理多版本的软件
- 使用update-alternatives切换ubuntu下默认java命令