当我重新启动 Tomcat 时,总是出现以下错误消息:
/etc/init.d/tomcat6 restart * Stopping Tomcat servlet engine tomcat6 [ OK ] * Starting Tomcat servlet engine tomcat6 start-stop-daemon: unable to stat /usr/lib/jvm/java-6-sun/bin/java (No such file or directory)
当我重新启动 tomcat 时会发生这种情况。然后我再次安装,但重新启动时出现错误。
答案1
看起来您在以前的安装路径中有一个损坏的 sun-java 符号链接,这会混淆 tomcat 的 /etc/init.d 脚本。
如果你试试
file $(which java)
应该这样回复;
java: broken symlink to /some/thing/here
您可以尝试使用“替代方案”工具来查看 ubuntu 认为已安装哪些 Java 包,如下所示;
sudo update-alternatives --config java
这将提供已知安装的 Java 版本的列表,并允许您为系统选择默认版本,替代方案应该会自动修复路径和符号链接。
如果没有安装 Java,或者这不能解决问题,您可以尝试重新安装默认的 openJDK java,如下所示;
apt-get install openjdk-6-jre
这也应该可以修复替代方案,但是如果没有,您可以再次运行替代方案命令。
sudo update-alternatives --config java
如果您已经从 tarball 或非打包的 tomcat 或 java 安装安装了 tomcat,并且没有设置正确的路径,则上述步骤可能没有帮助,然后我会 aptitude 删除 tomcat6 和 java,然后重新安装这两个软件包。
如果你更喜欢 Sun Java 而不是 OpenJDK Java,那么本文包含一个在 ubuntu 上安装 Sun Java 的脚本链接,以及我提到的其他内容的一些说明。这是必需的,因为 Ubuntu 的默认存储库中不再包含 Sun JDK。