jps: error while loading shared libraries: libjli.so: cannot open shared object file: No such file..

        今天用jps查看hadoop运行情况,发现如题所示的问题,网上的一个解决办法是删除/usr/bin/javac 和 /usr/bin/jar ,然后重新建立/usr/bin/javac 到jdk安装目录/bin/javac的软连接 和/usr/bin/jar 到 jdk安装目录/bin/jar的软连接,目的是为消除上次jdk卸载不彻底遗留下的影响,这篇文章的地址为:http://www.myexception.cn/ruby-rails/959090.html

        不过按照这种方式,我操作了一遍,没有解决问题,然后我在另外一篇博客中受到启发,博客地址为:http://hi.baidu.com/fbuacikdutemp/item/4a60a3e09d86b2d4eb34c961

。不过不是按照他说的方法,他的问题是由于装了两个版本的jdk,相应的有两个jre,相应的他locate到两个libjli.so,而我只装了一个版本的jdk,即只有一个jre,不过奇怪的是我在我的jdk目录下搜索到两个libjli.so,如下图:

root@wangchangshuai:/usr/bin# find /usr/lib/ -name libjli.so
/usr/lib/jvm/jdk1.7.0_51/lib/i386/jli/libjli.so
/usr/lib/jvm/jdk1.7.0_51/jre/lib/i386/jli/libjli.so
root@wangchangshuai:/usr/bin# 

由于我是直接解压的官网上的linux JDK压缩包,于是我想到libjli.so的路径没有加入到环境变量中,所以会出现我这个问题,于是解决方案出炉了

用管理员权限打开/etc/profile:

                          sudo nano /etc/profile

在文件的末尾加入如下语句:

                          export LIBJLI_PATH= /usr/lib/jvm/jdk1.7.0_51/jre/lib/i386/jli

                          export PATH=$LIBJLI_PATH:$PATH

然后ctrl+x 输入yes保存,然后执行如下命令使export的环境变量生效

                          source /etc/profile

结果:

       在执行了上面的操作之后,输入jps发现可以查看hadoop运行情况了。

root@wangchangshuai:~# jps
10291 TaskTracker
4925 
10097 JobTracker
10019 SecondaryNameNode
12997 Jps
9614 NameNode
9812 DataNode
root@wangchangshuai:~# 








  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
当你遇到 "jps: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory" 错误时,这通常发生在Java程序中,特别是当你运行Java进程(例如使用JPS命令检查Java进程状态)时,系统找不到名为 `libjli.so` 的共享库文件。`libjli.so` 通常与Oracle的Java Development Kit (JDK) 或者Java运行时环境 (JRE) 中的JavaFX库相关。 解决这个问题,你可以按照以下步骤操作: 1. **确认文件存在**:首先,请确保`libjli.so` 文件确实存在于预期的位置,如`<JAVA_HOME>/jre/lib/amd64/server` 或 `<JAVA_HOME>/jre/lib/`. 2. **检查安装**:如果文件不存在,可能是因为JavaFX没有正确安装,或者你尝试运行的Java程序依赖了JavaFX但系统没有找到它。确认你的系统是否安装了JavaFX,如果没有,你需要安装相应的版本。 3. **环境变量设置**:如果你的Java安装路径不是默认的 `/usr/lib/jvm/`,请确保`JAVA_HOME` 和`JRE_HOME` 环境变量已经配置正确,并指向你的Java安装目录。 4. **重新启动Java进程**:关闭并重新启动你的Java应用程序或服务,有时候仅重启就足以解决因加载库顺序问题导致的错误。 5. **更新或修复JDK/JRE**:如果文件缺失,尝试更新你的Java版本到最新稳定版,或者修复已安装的包。 6. **检查依赖和版本冲突**:如果有多个版本的Java或库文件,确保它们之间没有冲突。 如果上述步骤无法解决问题,你可能需要提供更多的上下文信息以便更准确地诊断,比如你在执行哪个具体的Java项目,或者你的系统环境(操作系统、JDK版本等)。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值