You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac Eclipse Oxygen中Tomcat 9搭配JDK 10无法启动求助

解决Tomcat 9 + JDK 10在Eclipse中启动的java.endorsed.dirs错误

这个问题我之前踩过坑!核心原因很明确:JDK 9及以后的版本已经彻底移除了-Djava.endorsed.dirs这个参数,而Tomcat 9的默认配置里还保留着这个废弃的参数,用JDK10启动时就会触发虚拟机创建失败的错误。虽然Tomcat 9确实宣称支持JDK8及以上,但早期版本的Tomcat对JDK9+的适配没跟上,才导致了这个冲突。

下面是几个可行的解决方法,按优先级推荐:

方法1:修改Eclipse中Tomcat的启动参数

这是最直接的方案,毕竟你是在Eclipse里启动Tomcat:

  • 在Eclipse的Servers视图中,找到你的Tomcat 9服务器,右键选择Open
  • 在打开的配置页面,点击右上角的Open launch configuration
  • 切换到Arguments标签页,在VM arguments区域找到包含-Djava.endorsed.dirs=/Users/../software/apache-tomcat-9.0.8/endorsed的那一行,直接删除它
  • 保存配置,重新启动Tomcat,应该就能正常运行了

方法2:修改Tomcat全局配置文件

如果你偶尔也会直接启动Tomcat(不通过Eclipse),可以修改Tomcat安装目录下的全局配置:

  • 找到Tomcat安装目录的bin文件夹,打开catalina.sh文件
  • 搜索JAVA_ENDORSED_DIRS相关的配置行,把它们注释掉(在行前加#)或者直接删除
  • 保存文件后,无论是Eclipse还是直接启动Tomcat,都不会再加载这个废弃参数

方法3:降级到JDK 8(可选)

如果不想折腾配置,直接降级到JDK8也是个稳妥的选择——毕竟你在Linux上用这个组合能正常运行,而且JDK8目前还是企业级应用的主流版本,兼容性拉满。

另外可以检查下Eclipse的Java Build Path和服务器的Runtime Environment,确保配置的JDK路径和你~/.bash_profile里的JAVA_HOME一致,避免出现路径不匹配的隐性问题。

内容的提问来源于stack exchange,提问作者user1024855

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:41:22