【问题标题】:OSX 10.9.1: "Tomcat started." localhost:8080 says "no data received"OSX 10.9.1:“Tomcat 已启动。” localhost:8080 说“没有收到数据”
【发布时间】:2014-02-12 15:10:56
【问题描述】:

我花了几个小时试图安装 Tomcat 并运行服务器,但仍然没有。

❯ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents

❯ bash startup.sh
Using CATALINA_BASE:   /Library/Tomcat
Using CATALINA_HOME:   /Library/Tomcat
Using CATALINA_TMPDIR: /Library/Tomcat/temp
Using JRE_HOME:        /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Using CLASSPATH:       /Library/Tomcat/bin/bootstrap.jar:/Library/Tomcat/bin/tomcat-juli.jar
Using CATALINA_PID:    /Library/Tomcat/tomcat.pid
Existing PID file found during start.
Removing/clearing stale PID file.

Tomcat started.

/Library/Tomcat/bin
❯

localhost:8080 仍然没有加载。

我已经检查过了,没有其他进程正在使用该端口。 我还添加了一个虚拟用户。不过,什么都没有。

<role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="tomcat" password="tomcat" roles="tomcat,admin,manager"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="role1" password="tomcat" roles="role1"/>

配置测试:

❯ ./catalina.sh configtest
Using CATALINA_BASE:   /Library/Tomcat
Using CATALINA_HOME:   /Library/Tomcat
Using CATALINA_TMPDIR: /Library/Tomcat/temp
Using JRE_HOME:        /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Using CLASSPATH:       /Library/Tomcat/bin/bootstrap.jar:/Library/Tomcat/bin/tomcat-juli.jar
Using CATALINA_PID:    /Library/Tomcat/tomcat.pid
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/catalina/startup/Bootstrap : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Configuration error detected!

❯ which java
/usr/bin/java

❯ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)

然而,出于某种原因,我的系统偏好设置中显示的是 1.7。

我什至尝试过 Tomcat 控制器,但它说有些东西也没有正确配置。 如果这些错误能准确地告诉我问题所在,那将非常有帮助。

随意将其移至 ServerFault

【问题讨论】:

    标签: java macos tomcat


    【解决方案1】:

    您安装了两个 JVM。不是启动输出中的JRE_HOME 行,并将其与上面的JAVA_HOME 路径进行比较。

    您需要更新 JRE_HOME 环境变量和 /usr/bin 中的 java 符号链接以指向 java 7 安装。

    【讨论】:

    • ❯ cd /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/ cd: no such file or directory: /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/ ~ ❯ cd /Library/Java/JavaVirtualMachines/ /Library/Java/JavaVirtualMachines ❯ ls /Library/Java/JavaVirtualMachines ❯ 在 1.7 JDK 中似乎什么都不是。这怎么可能?
    • Apple 决定回溯并从其官方版本中删除对 JDK 7 的支持。
    • 我曾经运行过 Tomcat 7,但现在没有了。我的环境变量在标准安装中应该是什么样的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-29
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多