1、从来没有这么郁闷,之前安装都是好好的,自从将Centos升级到7.0版本,安装了jdk报了这个错误,也是郁闷的一毛,参考了一下百度的,记录一下。使用java命令还有java -version命令都是正常的,唯独使用javac报错按照道理来说自从jdk1.7以后可以不用配置classpath了啊。可我配置了classpath依旧报错。自能百度大法了啊。
1 [root@slaver4 soft]# javac
2 -bash: //usr/local/soft/jdk1.8.0_191/bin/javac: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
参考:https://blog.csdn.net/jinchunzhao123/article/details/81239484#commentsedit
2、执行yum install glibc.i686命令。安装glibc.i686这个安装包。
1 [root@slaver4 lib]# yum install glibc.i686
2 已加载插件:fastestmirror, langpacks
3 Loading mirror speeds from cached hostfile
4 * base: mirror.jdcloud.com
5 * extras: mirror.jdcloud.com
6 * updates: mirror.jdcloud.com
7 正在解决依赖关系
8 --> 正在检查事务
9 ---> 软件包 glibc.i686.0.2.17-260.el7_6.6 将被 安装
10 --> 正在处理依赖关系 glibc-common = 2.17-260.el7_6.6,它被软件包 glibc-2.17-260.el7_6.6.i686 需要
11 --> 正在处理依赖关系 libfreebl3.so(NSSRAWHASH_3.12.3),它被软件包 glibc-2.17-260.el7_6.6.i686 需要
12 --> 正在处理依赖关系 libfreebl3.so,它被软件包 glibc-2.17-260.el7_6.6.i686 需要
13 --> 正在检查事务
14 ---> 软件包 glibc-common.x86_64.0.2.17-260.el7 将被 升级
15 --> 正在处理依赖关系 glibc-common = 2.17-260.el7,它被软件包 glibc-2.17-260.el7.x86_64 需要
16 ---> 软件包 glibc-common.x86_64.0.2.17-260.el7_6.6 将被 更新
17 ---> 软件包 nss-softokn-freebl.i686.0.3.36.0-5.el7_5 将被 安装
18 --> 正在检查事务
19 ---> 软件包 glibc.x86_64.0.2.17-260.el7 将被 升级
20 ---> 软件包 glibc.x86_64.0.2.17-260.el7_6.6 将被 更新
21 --> 解决依赖关系完成
22
23 依赖关系解决
24
25 ===================================================================================================
26 Package 架构 版本 源 大小
27 ===================================================================================================
28 正在安装:
29 glibc i686 2.17-260.el7_6.6 updates 4.3 M
30 为依赖而安装:
31 nss-softokn-freebl i686 3.36.0-5.el7_5 base 211 k
32 为依赖而更新:
33 glibc x86_64 2.17-260.el7_6.6 updates 3.7 M
34 glibc-common x86_64 2.17-260.el7_6.6 updates 12 M
35
36 事务概要
37 ===================================================================================================
38 安装 1 软件包 (+1 依赖软件包)
39 升级 ( 2 依赖软件包)
40
41 总计:20 M
42 总下载量:4.5 M
43 Is this ok [y/d/N]: y
44 Downloading packages:
45 警告:/var/cache/yum/x86_64/7/base/packages/nss-softokn-freebl-3.36.0-5.el7_5.i686.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
46 nss-softokn-freebl-3.36.0-5.el7_5.i686.rpm 的公钥尚未安装
47 (1/2): nss-softokn-freebl-3.36.0-5.el7_5.i686.rpm | 211 kB 00:00:04
48 glibc-2.17-260.el7_6.6.i686.rpm 的公钥尚未安装================- ] 726 kB/s | 4.1 MB 00:00:00 ETA
49 (2/2): glibc-2.17-260.el7_6.6.i686.rpm | 4.3 MB 00:00:05
50 ---------------------------------------------------------------------------------------------------
51 总计 792 kB/s | 4.5 MB 00:00:05
52 从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 检索密钥
53 导入 GPG key 0xF4A80EB5:
54 用户ID : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
55 指纹 : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
56 软件包 : centos-release-7-6.1810.2.el7.centos.x86_64 (@anaconda)
57 来自 : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
58 是否继续?[y/N]:y
59 Running transaction check
60 Running transaction test
61 Transaction test succeeded
62 Running transaction
63 正在更新 : glibc-common-2.17-260.el7_6.6.x86_64 1/6
64 正在更新 : glibc-2.17-260.el7_6.6.x86_64 2/6
65 正在安装 : nss-softokn-freebl-3.36.0-5.el7_5.i686 3/6
66 正在安装 : glibc-2.17-260.el7_6.6.i686 4/6
67 清理 : glibc-common-2.17-260.el7.x86_64 5/6
68 清理 : glibc-2.17-260.el7.x86_64 6/6
69 验证中 : glibc-2.17-260.el7_6.6.x86_64 1/6
70 验证中 : nss-softokn-freebl-3.36.0-5.el7_5.i686 2/6
71 验证中 : glibc-2.17-260.el7_6.6.i686 3/6
72 验证中 : glibc-common-2.17-260.el7_6.6.x86_64 4/6
73 验证中 : glibc-2.17-260.el7.x86_64 5/6
74 验证中 : glibc-common-2.17-260.el7.x86_64 6/6
75
76 已安装:
77 glibc.i686 0:2.17-260.el7_6.6
78
79 作为依赖被安装:
80 nss-softokn-freebl.i686 0:3.36.0-5.el7_5
81
82 作为依赖被升级:
83 glibc.x86_64 0:2.17-260.el7_6.6 glibc-common.x86_64 0:2.17-260.el7_6.6
84
85 完毕!
86 [root@slaver4 lib]#
3、解决问题。
1 [root@slaver4 soft]# java
2 用法: java [-options] class [args...]
3 (执行类)
4 或 java [-options] -jar jarfile [args...]
5 (执行 jar 文件)
6 其中选项包括:
7 -d32 使用 32 位数据模型 (如果可用)
8 -d64 使用 64 位数据模型 (如果可用)
9 -server 选择 "server" VM
10 默认 VM 是 server.
11
12 -cp <目录和 zip/jar 文件的类搜索路径>
13 -classpath <目录和 zip/jar 文件的类搜索路径>
14 用 : 分隔的目录, JAR 档案
15 和 ZIP 档案列表, 用于搜索类文件。
16 -D<名称>=<值>
17 设置系统属性
18 -verbose:[class|gc|jni]
19 启用详细输出
20 -version 输出产品版本并退出
21 -version:<值>
22 警告: 此功能已过时, 将在
23 未来发行版中删除。
24 需要指定的版本才能运行
25 -showversion 输出产品版本并继续
26 -jre-restrict-search | -no-jre-restrict-search
27 警告: 此功能已过时, 将在
28 未来发行版中删除。
29 在版本搜索中包括/排除用户专用 JRE
30 -? -help 输出此帮助消息
31 -X 输出非标准选项的帮助
32 -ea[:<packagename>...|:<classname>]
33 -enableassertions[:<packagename>...|:<classname>]
34 按指定的粒度启用断言
35 -da[:<packagename>...|:<classname>]
36 -disableassertions[:<packagename>...|:<classname>]
37 禁用具有指定粒度的断言
38 -esa | -enablesystemassertions
39 启用系统断言
40 -dsa | -disablesystemassertions
41 禁用系统断言
42 -agentlib:<libname>[=<选项>]
43 加载本机代理库 <libname>, 例如 -agentlib:hprof
44 另请参阅 -agentlib:jdwp=help 和 -agentlib:hprof=help
45 -agentpath:<pathname>[=<选项>]
46 按完整路径名加载本机代理库
47 -javaagent:<jarpath>[=<选项>]
48 加载 Java 编程语言代理, 请参阅 java.lang.instrument
49 -splash:<imagepath>
50 使用指定的图像显示启动屏幕
51 有关详细信息, 请参阅 http://www.oracle.com/technetwork/java/javase/documentation/index.html。
52 [root@slaver4 soft]# javac
53 用法: javac <options> <source files>
54 其中, 可能的选项包括:
55 -g 生成所有调试信息
56 -g:none 不生成任何调试信息
57 -g:{lines,vars,source} 只生成某些调试信息
58 -nowarn 不生成任何警告
59 -verbose 输出有关编译器正在执行的操作的消息
60 -deprecation 输出使用已过时的 API 的源位置
61 -classpath <路径> 指定查找用户类文件和注释处理程序的位置
62 -cp <路径> 指定查找用户类文件和注释处理程序的位置
63 -sourcepath <路径> 指定查找输入源文件的位置
64 -bootclasspath <路径> 覆盖引导类文件的位置
65 -extdirs <目录> 覆盖所安装扩展的位置
66 -endorseddirs <目录> 覆盖签名的标准路径的位置
67 -proc:{none,only} 控制是否执行注释处理和/或编译。
68 -processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
69 -processorpath <路径> 指定查找注释处理程序的位置
70 -parameters 生成元数据以用于方法参数的反射
71 -d <目录> 指定放置生成的类文件的位置
72 -s <目录> 指定放置生成的源文件的位置
73 -h <目录> 指定放置生成的本机标头文件的位置
74 -implicit:{none,class} 指定是否为隐式引用文件生成类文件
75 -encoding <编码> 指定源文件使用的字符编码
76 -source <发行版> 提供与指定发行版的源兼容性
77 -target <发行版> 生成特定 VM 版本的类文件
78 -profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
79 -version 版本信息
80 -help 输出标准选项的提要
81 -A关键字[=值] 传递给注释处理程序的选项
82 -X 输出非标准选项的提要
83 -J<标记> 直接将 <标记> 传递给运行时系统
84 -Werror 出现警告时终止编译
85 @<文件名> 从文件读取选项和文件名
86
87 [root@slaver4 soft]# java -version
88 openjdk version "1.8.0_181"
89 OpenJDK Runtime Environment (build 1.8.0_181-b13)
90 OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
91 [root@slaver4 soft]#
我的/etc/profile文件配置如下所示:
1 export JAVA_HOME=/usr/local/soft/jdk1.8.0_191
2 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
3 export PATH=$PATH:$JAVA_HOME/bin
待续......