【发布时间】:2017-04-29 16:55:17
【问题描述】:
我最近尝试在 Lubuntu 14.04 服务器上安装带有 Tomcat7 的 GeoServer,但这样做时遇到了很多问题,因为 Tomcat7 的 Java 默认版本设置为 1.7。昨晚我为此苦苦挣扎,我想记录一下如何解决它。
我按照以下步骤在 Lubuntu 14.04 机器上安装了 GeoServer:
1) 安装 Java 8,如文档中的 here
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
之后,运行java -versionreturned:
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
2) 安装 Tomcat 7
sudo apt-get install tomcat7 tomcat7-admin
3) 安装 GeoServer 的“Web Archive”版本
cd ~/Downloads
wget http://sourceforge.net/projects/geoserver/files/GeoServer/2.11.0/geoserver-2.11.0-war.zip
unzip geoserver-2.11.0-war.zip geoserver.war
sudo mv geoserver.war /var/lib/tomcat7/webapps/
sudo service tomcat7 restart
在那之后,我无法访问localhost:8080/geoserver。尝试这样做会返回 HTTP Status 404 - /geoserver 错误,并显示“请求的资源不可用”。作为描述。
尝试通过Tomcat的/manager页面部署.war文件也没有成功,返回如下错误:Application at context path /geoserver could not be started。
我查看了错误日志,看看出了什么问题,发现了以下异常:
Apr 29, 2017 12:32:49 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Error configuring application listener of class org.geoserver.platform.GeoServerHttpSessionListenerProxy
java.lang.UnsupportedClassVersionError: org/geoserver/platform/GeoServerHttpSessionListenerProxy : Unsupported major.minor version 52.0 (unable to load class org.geoserver.platform.GeoServerHttpSessionListenerProxy)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2970)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1209)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1689)
[...]
尽管错误消息说什么,回显$JAVA_HOME 返回/usr/lib/jvm/java-8-oracle,所以我确定我有必要的Java 版本。
【问题讨论】:
标签: java ubuntu tomcat ubuntu-14.04 geoserver