• Centos安装jdk1.8出现-bash: //usr/local/soft/jdk1.8.0_191/bin/javac: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录错误。


    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

    待续......

  • 相关阅读:
    探索Javascript 异步编程
    前端性能调优
    怎样选择前端框架
    前端地图截屏方案
    不一样的山顶角
    前后端分离场景下的另类登录认证方案
    React Diff 算法
    纯css实现Magicline Navigation(下划线动画导航菜单)
    Tinymce group plugin
    自适应process组件
  • 原文地址:https://www.cnblogs.com/biehongli/p/11146663.html
Copyright © 2020-2023  润新知