Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
其中:我的用户在linux上没有java_Java_Linux - Fatal编程技术网

其中:我的用户在linux上没有java

其中:我的用户在linux上没有java,java,linux,Java,Linux,我尝试在Linux服务器centOS上安装java8。In/etc/profile export JAVA_HOME=/root/jdk1.8.0_71/ export PATH=$JAVA_HOME/bin/:$PATH [root@localhost ~]# echo $JAVA_HOME /root/jdk1.8.0_71/ [root@localhost ~]# which java /root/jdk1.8.0_71/bin/java [root@localhost ~]# 然后我

我尝试在Linux服务器centOS上安装java8。In/etc/profile

export JAVA_HOME=/root/jdk1.8.0_71/
export PATH=$JAVA_HOME/bin/:$PATH

[root@localhost ~]# echo $JAVA_HOME
/root/jdk1.8.0_71/
[root@localhost ~]# which java
/root/jdk1.8.0_71/bin/java
[root@localhost ~]#
然后我安装了Cassandra,但它找不到java8。我执行一些命令,然后

[root@localhost ~]# su cassandra -c "echo $JAVA_HOME"
/root/jdk1.8.0_71/
[root@localhost ~]# su cassandra -c "whereis java"
java: /usr/bin/java /etc/java /usr/lib/java /usr/local/bin/java /usr/share/java /usr/share/man/man1/java.1.gz
[root@localhost ~]# su cassandra -c "which java"
which: no java in (/root/jdk1.8.0_71//bin/:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
我想知道,既然路径是正确的,为什么我无法使用哪个java获得java? 然后创建软链接并将/root/jdk1.8.0_71的模式更改为777

cd /usr/bin
java -> /root/jdk1.8.0_71/bin/java

但它仍然不起作用。我是否遗漏了某些内容或出错?

如果用户Cassandra对/root文件夹没有权限,则无法找到它我不知道为什么要将JDK复制到/root文件夹中。我的建议是将jdk1.8.0_71复制到/opt文件夹中,并设置正确的权限(所有者或组),例如:

cp -r /root/jdk1.8.0_71 /opt
chown -R cassandra.cassandra /opt
另外,在PATH变量中设置路径不应包括尾随,以避免“/root/jdk1.8.0_71//bin/”