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

高版本Java中传统WAR项目部署至非嵌入式Tomcat能否应用Java模块?

传统.war项目部署到非嵌入式Tomcat时能否使用Java模块相关特性?

当前普遍认为暂无法实现,具体原因如下:

  • Tomcat的启动脚本catalina.bat或catalina.sh实际是通过Java启动catalina.jar,需要该组件负责加载模块,但目前org.apache.catalina.loader包下的WebappLoader、WebappClassLoader、WebappClassLoaderBase类中均未实现相关逻辑,暂不支持该能力(不排除后续版本更新支持的可能)。
  • 开发阶段可以为WAR项目添加module-info.java,在编码、编译期应用模块化约束,优化WEB-INF/lib下依赖库的组织逻辑,但项目在Tomcat中运行时,模块化的校验规则不会生效。

补充说明:使用嵌入式Tomcat时可正常使用Java模块特性,只需将项目打包为携带全量依赖的jar包,通过--module-path参数启动即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 23:42:05