我正在尝试设置JAVA_HOME,以便我可以在本教程的帮助下安装 Apache Solr。我使用连接到我的服务器的SSH用root用户
要允许正在运行的 sh 脚本安装 Apache Solr:
mount | grep noexec
Run Code Online (Sandbox Code Playgroud)
使用 exec 选项重新挂载文件系统:
mount -o remount,exec /dev/md1
Run Code Online (Sandbox Code Playgroud)
然后每次我尝试使用以下命令安装它时
bin/install_solr_service.sh /tmp/solr-5.3.1.tgz
Run Code Online (Sandbox Code Playgroud)
我收到以下消息:
WARNING: /opt/solr-5.3.1 already exists! Skipping extract ...
Creating /etc/init.d/solr script ...
The currently defined JAVA_HOME (/usr/local/jdk) refers
to a location where Java could not be found. Aborting.
Either fix the JAVA_HOME variable or remove it from the
environment so that the system PATH will be searched.
The currently defined JAVA_HOME (/usr/local/jdk) refers
to a location where Java could not be found. Aborting.
Either fix the JAVA_HOME variable or remove it from the
environment so that the system PATH will be searched.
Service solr installed.
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止尝试过的:
nano /root/.bash_profile
nano /etc/profile
Run Code Online (Sandbox Code Playgroud)
我最后在上面的文件中添加了以下内容并保存了它们
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64
export PATH=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
那没有用。
我创建了以下文件 /etc/profile.d/java.sh 并放入其中:
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/jre/
export PATH=$PATH:$JRE_HOME/bin
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64
export JAVA_PATH=$JAVA_HOME
export PATH=$PATH:$JAVA_HOME/bin
Run Code Online (Sandbox Code Playgroud)
并运行以下命令:
source java.sh
Run Code Online (Sandbox Code Playgroud)
那也没有用。
我尝试运行以下命令:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64
Run Code Online (Sandbox Code Playgroud)
一点运气都没有。
但是当运行以下命令时,我得到了
echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64
echo $PATH
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/bin:/usr/local/jdk/bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/jre//bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin
Run Code Online (Sandbox Code Playgroud)
Rui*_*iro 10
您想将 JAVA_HOME 指向 JRE 目录,如下所示:
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre/
Run Code Online (Sandbox Code Playgroud)
如果使用 bash,我建议将其放在/etc/bashrc(基于 RH 的)或/etc/bash.bashrc(基于 Debian 的)中:
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:/bin/java::")
Run Code Online (Sandbox Code Playgroud)
我正在阅读我的问题并在其中找到了答案。这就是我所做的:
我已撤消对/root/.bash_profile和/etc/profile的所有更改
然后我在 /usr/local/ 文件夹中创建了一个名为jdk的文件夹,如下所示
mkdir /usr/local/jdk
Run Code Online (Sandbox Code Playgroud)
因为这是 jdk 预计位于的位置。然后我将 jdk 文件复制到 newcp -R /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64 /jre/* /usr/local/jdk/ 文件夹如下:
cp -R /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/jre/* /usr/local/jdk/
Run Code Online (Sandbox Code Playgroud)
就这么简单,我现在可以安装 Apache Solr
| 归档时间: |
|
| 查看次数: |
84409 次 |
| 最近记录: |