1
mikicomo 2016-10-09 23:48:45 +08:00
你环境变量怎么设置的代码贴一下?
source 了吗? 最省心的直接 apt 安装 openjdk 好了 |
2
HGladIator OP @mikicomo 手机不方便贴, source 了,要是实在不行了再说
|
3
ugugzh 2016-10-10 09:57:29 +08:00
你检查一下你 jdk 的 bin 目录下的文件有没有执行权限
|
4
HGladIator OP @ugugzh 都有执行权限
|
5
HGladIator OP @mikicomo
/etc/profile 末尾添加 export JAVA_HOME=/opt/jdk1.8.0_101 export PATH=${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin:${PATH} export CLASSPATH=.:${JAVA_HOME}/bin:${JAVA_HOME}/jre/lib ~/.bashrc 末尾添加 export JAVA_HOME=/opt/jdk1.8.0_101 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar |
6
woyaojizhu8 2016-10-10 20:54:01 +08:00
@mikicomo 我就是 apt 装了 openjdk 的( default-jdk 这个包),但是不起作用, java -version 显示如下:
The program 'java' can be found in the following packages: * default-jre * gcj-5-jre-headless * openjdk-8-jre-headless * gcj-4.8-jre-headless * gcj-4.9-jre-headless * openjdk-9-jre-headless Try: sudo apt install <selected package> 其中 openjdk-8-jre-headless 这个包已经因为 default-jdk 的依赖关系而装上了。 我在 /etc/profile 末尾添加了如下语句: export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH 这是为什么呢? |
7
HGladIator OP @woyaojizhu8 我安装了很多次 ,也出现过你这样的情况,反正到现在就是没有安装成功
|
8
zc666 2016-10-11 16:52:12 +08:00 via iPhone
我在 ubuntu 16.04 也遇到过这个问题,我当时发现 jdk 已经安装好了,但是在终端敲 java 却提示没有安装。
可能得 将 java 的可执行文件 链接到 /usr/sbin 目录而不是 /usr/bin 目录。 |
9
ilovesusu 2016-10-11 17:39:29 +08:00
https://ilovesusu.github.io/2016/05/24/Debian-8-%E5%AE%89%E8%A3%85-SunJdk/
用这个方法百分之百安装成功,还不需要配置环境变量.. |
10
HGladIator OP @zc666 我试了一下也不行啊
|
11
zc666 2016-10-12 09:34:41 +08:00 1
可能我表述有问题,或者这个方法对你无效。
1.我表述有问题: 我的大致经历: 我在终端敲 java ,然后它提醒我说可以 java 未安装,敲哪些命令命令可以安 java ,但是在 sudo apt 去安装时发现已经是 installed 了。 然后我在网上找到 java 的安装目录,把 /usr/lib/jvm/java-8-openjdk-amd64/bin/java 这个文件 链接 到 /usr/sbin 目录里,可能要重启终端,再次进入终端时,敲 java 就有正常的结果了。 $ls /usr/sbin -l |grep java lrwxrwxrwx 1 root root 42 9 月 1 19:21 java -> /usr/lib/jvm/java-8-openjdk-amd64/bin/java 2.这个方法无效: 我也不是很清楚其他的原因。 我的疑问:我在 /usr/bin 目录下也发现了一个 java 文件,好像没用 $ ls /usr/bin -l |grep java -rwxr-xr-x 1 root root 2513 2 月 11 2016 dh_nativejava lrwxrwxrwx 1 root root 22 8 月 19 01:29 java -> /etc/alternatives/java lrwxrwxrwx 1 root root 23 9 月 1 13:09 javac -> /etc/alternatives/javac lrwxrwxrwx 1 root root 25 9 月 1 13:09 javadoc -> /etc/alternatives/javadoc lrwxrwxrwx 1 root root 23 9 月 1 13:09 javah -> /etc/alternatives/javah lrwxrwxrwx 1 root root 23 9 月 1 13:09 javap -> /etc/alternatives/javap $file /etc/alternatives/java /etc/alternatives/java: broken symbolic link to /usr/lib/jvm/java-9-openjdk-amd64/bin/java 不知道能不能解决你的问题。 |
12
HGladIator OP @zc666
$ ls /usr/sbin -l|grep java lrwxrwxrwx 1 root root 4 10 月 12 22:11 java -> java 怎么链接的有绝对路径啊 我是在 java 源文件下 $ sudo ln -s java /usr/sbin/java 然后这个软链接没有显示绝对路径, 昨天没有重启,今天重启啦也没用 |
13
zc666 2016-10-12 23:48:03 +08:00
你的用法错了,首先你得找到你电脑上 openjdk 的安装目录,找到 java 文件的地址,比如我的是‘/usr/lib/jvm/java-8-openjdk-amd64/bin/java ’
然后在是将 java 的地址链接到 /usr/sbin 目录,而且 ln 命令错了。你可以到网上搜搜 ln 用法 ln -s /usr/lib/jvm/java-8-openjdk-amd64/bin/java /usr/sbin/java |
14
hosiet 2016-10-13 08:54:15 +08:00 via Android
话说这么麻烦是怎么来的?我 apt 装一下 openjdk 直接开箱就用了,根本没碰到任何坑。
|
15
HGladIator OP @hosiet 我想这个问题应该很简单,所以就想知道为什么
|