我正在尝试在Ubuntu 14.04中安装一些软件(Shibboleth)。我已经在/usr/lib/jvm/
中安装了Java 7 OpenJDK,并且在/usr/environment
中有以下行
JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export JAVA_HOME
如果我输入echo $JAVA_HOME
,我正确地得到/usr/lib/jvm/java-7-openjdk-amd64
。然而,当我尝试安装Shibboleth时,我总是得到Error: JAVA_HOME is not defined correctly. Cannot execute java
。
有趣的是,如果我输入java
命令,它就能工作(它指向/usr/lib/java,这是一个指向正确的链接)。然而,当我尝试运行Shibboleth的bash bin/install.sh
时,我得到了JAVA_HOME错误
我已经尝试将JAVA_HOME
设置为jre
文件夹,结果相同。有什么想法吗
8条答案
按热度按时间hlswsv351#
将
JAVA_HOME
和PATH
添加到~/.profile
然后,将以下内容添加到
/etc/profile.d/java.sh
有关详细信息,请参阅Documentation
希望能帮上忙。
whlutmcx2#
从Ubantu终端执行:
测试maven运行:
它将给予输出:
ryhaxcpt3#
而不是
是的
工作。
uubf1zoe4#
根据你的编辑。
在文件末尾添加这两行
然后
检查
t8e9dugd5#
你应该设置路径到bin文件夹在那里java,javac文件被发现.在您的情况下,它可能是/usr/lib/jvm/java-7-openjdk-amd 64/bin
7y4bm7vi6#
我的问题是,install.sh您正在运行的www.example.com脚本的java路径错误。
使用nano编辑文件
vim编辑器
并更改对应于Java路径的行,并添加正确的Java路径。这将解决你的问题。
P.S.此解决方案特定于Shibboleth安装的Java路径。
kokeuurv7#
对于未来的用户,请注意这个问题通常是因为
Java
在您的环境中没有正确设置。请执行以下步骤来修复此问题首先,使用以下命令
cd /usr/lib/jvm/{jdk-version}
检查JDK
的位置现在您已经获得了JDK
所在的完整路径,请像这样复制整个路径,在我的示例中,我有jdk1.8.0_261
因此,复制
/usr/lib/jvm/jdk1.8.0_261
路径,打开/etc/environment
并正确设置JDK路径,如下所示请注意,我已经将
/usr/lib/jvm/jdk1.8.0_261
添加到PATH
变量中,也添加到JAVA_HOME
变量中,这应该可以解决错误
Error: JAVA_HOME is not defined correctly. Cannot execute java
,因为JDK
现在在PATH
和JAVA_HOME
中正确设置,然后对于Shibboleth,您现在也可以定义它的安装路径(这是一个示例-不知道如何设置Shibboleth)whhtz7ly8#
导出JAVA_HOME ='/usr/lib/jvm/java-11-openjdk-amd 64'