007's Studio.

Eclipse运行失败tomcat失败

字数统计: 797阅读时长: 3 min
2019/09/15 Share

1、问题

最近在使用Eclipse写Java Web。tomcat环境什么都已经配置好了,能够正常运行。但是又装了些插件,捣鼓了一些配置,第二天还是一样的项目,跑不起来了。 选择相同的server进行Pbulish后start,出现了下面的错误。

tomcat启动错误1
tomcat启动错误2

看到这些错误我就找了一些相关文章看了一下,失败的原因很多,如:

  1. 端口占用(排除,还没启动过tomcat)
  2. 没有配置好Jdk,tomcat环境(排除,没有修该过环境变量等配置,命令行均正常运行)
  3. xml文件出错(排除,相同的项目没改过)
  4. 无法创建虚拟机,以为是eclipse.ini文件出错(排除,没修改过)
  5. 然后我又去查看了tomcat的log下的日志文件,不过没有发现什么错误警告。

    所以问题处在了Eclipse的配置上。在前面的错误提示中,我忽略了控制台给出的信息。导致我一直没有找到源头。如下:
    tomcat启动错误3

    出现该错误,发现是Java虚拟机启动时参数配置导致的。然后我根据这个找到相关文章。

    处理-Djava.endorsed.dirs=D:\tomcat\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and

    这篇文章只是简单给出了在运行时修改Run configuration删除相应参数,我尝试后可以成功启动。但是,第二次启动项目时,该参数还是存在,所以不能根除

2、解决

后面又查看了相关的文章。mac eclipse中运行tomcat出现错误:-Djava.endorsed.dirs=D:\Tomcat 9.0\endorsed is not supported,虽然平台不一样,但原因都是因为Jdk版本过高不兼容tomcat导致

然后我发现原来是我JDK环境默认设置成Jdk-10(原先使用的是Jdk-1.8),下面是修改默认Jdk的方法,打开Window|Preferences|Java|Build Path|Install JREs中,讲默认Jdk选择1.8版本。然后点击Apply。
解决1

同时如果项目原先使用jre-10需要改成jre-1.8。


关于tomcat和Jdk兼容版本可以打开tomcat官网查看,或者Eclipse的Window|Preferences|Server|Runtime Enviroments点击Add可以看到Tomcat和相应支持的Jdk版本。我们可以适当降低Jdk版本来解决这个问题。

下面是给出的总结:

tomcat版本 兼容的Jdk版本
Tomcat v3.2 J2EE 1.2
Tomcat v4.0 J2EE 1.2 and 1.3
Tomcat v4.1 J2EE 1.2 and 1.3
Tomcat v5.0 J2EE 1.2,1.3,1.4
Tomcat v5.5 J2EE 1.2,1.3,1.4
Tomcat v6.0 J2EE 1.2,1.3,1.4 and Java EE 5 and 6
Tomcat v7.0 J2EE 1.2,1.3,1.4 and Java EE 5 and 6
Tomcat v8.0 J2EE 1.2,1.3,1.4 and Java EE 5,6 and 7
Tomcat v8.5 J2EE 1.2,1.3,1.4 and Java EE 5,6 and 7
Tomcat v9.0 J2EE 1.2,1.3,1.4 and Java EE 5,6,7 and 8

下面是tomcat官网给出的版本关系:tomcat官网

官网显示Tocmat v9.0支持Jdk 8及以上版本。可能是在Eclipse中会出现这样的问题,我在IDEA进行相同的测试,先后使用Jdk-1.8和Jdk-10来使用tomcat v9.0均能成功
下面是相关jdk-10下运行maven项目截图:

IDEA maven运行jdk10


原文作者:007havegone

原文链接:http://007havegone.github.io/2019/09/15/Eclipse运行失败tomcat失败/

发表日期:September 15th 2019, 8:24:28 am

更新日期:September 15th 2019, 10:01:43 am

版权声明:‘原创内容,转载时请附上出处’

CATALOG
  1. 1. 1、问题
  2. 2. 2、解决