WSO2身份认证服务器 - Carbon无法执行Java
我正在使用Ubuntu 16.04 64位。我在/usr/local/java
中安装了Oracle JDK jdk1.8.0_144
,并设置符号链接如下。WSO2身份认证服务器 - Carbon无法执行Java
$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_144/jre/bin/java" 1
$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_144/bin/javac" 1
$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_144/jre/bin/javaws" 1
$ sudo update-alternatives --set java /usr/local/java/jdk1.8.0_144/jre/bin/java
$ sudo update-alternatives --set javac /usr/local/java/jdk1.8.0_144/bin/javac
$ sudo update-alternatives --set javaws /usr/local/java/jdk1.8.0_144/jre/bin/javaws
在那之后,我跟着WSO2文档中的安装引导件和设置如下JAVA_HOME
。
nano /.bashrc
添加变量:
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export PATH=${JAVA_HOME}/bin:${PATH}
我关闭旧终端和打开一个新的,然后运行:
echo $JAVA_HOME
,我得到
/usr/local/java/jdk1.8.0_144
然而,当我运行sh wso2server.sh
时,我得到了错误r:
JAVA_HOME is not defined correctly.
CARBON cannot execute java
错误。
你应该尽量添加以下到您的.bash_profile
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/jre/bin:$PATH
有类似的问题:Ubuntu: JAVA_HOME is not defined correctly
有此问题的许多其他原因:
1)你正在运行服务器作为超级用户(sudo),这是不需要的。不过我认为你没有在超级用户环境中设置JAVA_HOME
。
2)你可以试试:sudo JAVA_HOME=/usr/lib/jvm/java-7-oracle ./wso2server.sh
3)你可能应该设置JAVA_HOME
到/usr/lib/jvm/jdk1.7.0/jre
,而不是/usr/lib/jvm/jdk1.7.0
。
4)您的身份Server版本不支持java 8.
身份服务器从版本5.1.0开始支持java 8。请参阅https://docs.wso2.com/display/IS510/Installation+Prerequisites – pulasthi7
尝试封闭与报价如下JAVA_HOME路径, '出口JAVA_HOME = “在/ usr /本地/ JAVA/jdk1.8.0_144”' – pulasthi7