首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java已安装但不能工作(依赖问题??)

java已安装但不能工作(依赖问题??)
EN

Server Fault用户
提问于 2015-03-11 12:51:06
回答 2查看 247关注 0票数 0

我刚刚在我的新VPS上安装了Java 8,我正确地设置了链接,但是,仍然是java,或者javac无法工作:

代码语言:javascript
复制
root@vpsXXXXX:~# update-alternatives --display java
java - Auto-Modus
  Link verweist zur Zeit auf /usr/lib/jvm/java-8-oracle/bin/java
/usr/lib/jvm/java-8-oracle/bin/java - Priorität 1
Gegenwärtig »beste« Version ist »/usr/lib/jvm/java-8-oracle/bin/java«.
root@vps149825:~#

更具体而言:

代码语言:javascript
复制
root@vpsXXXXX:~# ls -l $(readlink -f /usr/bin/java)
-rwxr-xr-x 1 uucp 143 5730 Feb 11 07:26 /usr/lib/jvm/jdk1.8.0_40/bin/java
root@vpsXXXXX:~# ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Mär 11 13:32 /usr/bin/java -> /etc/alternatives/java
root@vpsXXXXX:~# ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 35 Mär 11 13:39 /etc/alternatives/java -> /usr/lib/jvm/java-8-oracle/bin/java
root@vpsXXXXX:~#

德国的sry,但我认为这是相当清楚的。所以联系不是问题所在。即使我进入目录玩具并尝试从那里执行java,它也不起作用。

代码语言:javascript
复制
root@vps149825:~# cd ../usr/lib/jvm/java-8-oracle/bin/
root@vps149825:/usr/lib/jvm/java-8-oracle/bin# ls
appletviewer  javafxpackager  jdb      jrunscript    pack200      unpack200
ControlPanel  javah           jdeps    jsadebugd     policytool   wsgen
extcheck      javap           jhat     jstack        rmic         wsimport
idlj          javapackager    jinfo    jstat         rmid         xjc
jar           java-rmi.cgi    jjs      jstatd        rmiregistry
jarsigner     javaws          jmap     jvisualvm     schemagen
java          jcmd            jmc      keytool       serialver
javac         jconsole        jmc.ini  native2ascii  servertool
javadoc       jcontrol        jps      orbd          tnameserv
root@vps149825:/usr/lib/jvm/java-8-oracle/bin# ./java
-bash: ./java: Datei oder Verzeichnis nicht gefunden
root@vps149825:/usr/lib/jvm/java-8-oracle/bin#

也是当我尝试

代码语言:javascript
复制
ldd /usr/lib/jvm/jdk1.8.0_40/bin/java

上面写着:

代码语言:javascript
复制
not a dynamic executable

另外:

代码语言:javascript
复制
root@vpsXXXXXXX:/usr/lib/jvm/jdk1.8.0_40/bin# file java
java: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, BuildID[sha1]=0x476386745161d6029010bc153c65060693cca771, not stripped

我觉得是不是缺少了一些依赖关系?

我使用的是Debian6.7机器64位。

EN

回答 2

Server Fault用户

发布于 2015-03-11 12:59:45

检查用于替代方案的所有符号链接是否正常:

代码语言:javascript
复制
ls -l $(readlink -f /usr/bin/java)

如果缺少链接,请通过递归列出来查找它。例如:

代码语言:javascript
复制
ls -l /usr/bin/java
ls -l /etc/alternatives/java
...
票数 1
EN

Server Fault用户

发布于 2015-03-12 13:21:33

问题是,我不小心安装了32位Java版本,尽管我有64位系统。如果有人知道32位版本不起作用的原因(因为它通常应该在64位的maschine上工作),我很想知道。

无论如何,安装64位版本解决了问题。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/674578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档