为tomcat7指定JDK
我已经安装了tomcat7
(使用apt-get install
),每当我想启动tomcat7
它会说:
* no JDK found - please set JAVA_HOME
我在我的bash.bashrc
和~/.bashrc
设置了JAVA_HOME
,当我发出echo $JAVA_HOME
我清楚地看到这个变量指向我的jdk的根文件夹。 有人可以帮帮我吗?
谢谢
你可以试试这个:
只需按键盘上的Ctrl + Alt + T即可打开终端。 打开时,运行以下命令。
gksudo gedit /etc/default/tomcat7
文件打开时,取消注释设置JAVA_HOME变量的行。
保存并重启tomcat7服务器。
Tomcat实际上不会使用您的JAVA_HOME环境变量,而是查看一些预定义位置和启动脚本内的JAVA_HOME变量集,正如其他答案所指出的那样。 如果您不喜欢搞乱tomcat启动脚本,可以为首选的java安装创建一个符号链接,这将由tomcat选取。
例如:
ln -s /usr/lib/jvm/java-8-oracle /usr/lib/jvm/default-java
打开终端
echo $JAVA_HOME
复制结果。 然后
sudo -H gedit /etc/default/tomcat7
将#JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk
替换为您从$JAVA_HOME
复制的输出。
只需在/ etc / default / tomcat7中添加以下行,即定义JAVA_HOME变量
JAVA_HOME=/usr/lib/jvm/java-7-oracle
然后运行命令
sudo service tomcat7 restart
添加到Mitch的答案(上面接受的答案),检查你的/usr/lib/jvm/
目录。 通常,java自己安装在那里。
您可能安装了oracle java,或者您可能安装了最新版本的Java。 只需检查/usr/lib/jvm/
的目录,然后添加java所在的目录。
对我来说,它是:
/usr/lib/jvm/java-8-oracle
所以,替换
#JAVA_HOME=/some/directory
同
#JAVA_HOME=/usr/lib/jvm/java-8-oracle
为我做了这份工作。