为何Eclipse Deployment Assembly未显示WebContent/WEB-INF/lib默认服务器映射?
为什么Eclipse Java EE 4.9.0中WebContent/WEB-INF/lib的部署映射生效却不在Deployment Assembly显示?
其实这是Eclipse针对动态Web项目的内置默认行为,背后有几个关键原因:
遵循Java EE的标准目录约定:对于传统的Eclipse动态Web项目,
WebContent/WEB-INF/lib是Java EE规范里定义的Web应用依赖库的标准位置。Eclipse直接把这个规则硬编码进了项目的核心逻辑里,会自动将该目录下的JAR包部署到服务器的WEB-INF/lib目录,完全不需要手动配置,所以这个默认映射不会在Deployment Assembly里显示。Deployment Assembly只展示自定义配置:这个标签页的定位是管理非默认、用户自定义的部署映射规则。比如你手动添加了额外的依赖目录(比如把
src/custom-lib映射到WEB-INF/lib),或者修改了默认的编译输出路径,这些自定义的配置才会出现在这里。而内置的标准目录映射属于“隐式规则”,不在UI的展示范围内。项目配置文件的隐式记录:如果你想确认这个映射确实存在,可以查看项目根目录下的
.settings/org.eclipse.wst.common.component文件——里面其实已经记录了这个默认的部署映射关系,只是Eclipse没有把它展示在Deployment Assembly的可视化面板里而已。
内容的提问来源于stack exchange,提问作者Code Complete
相关产品推荐
相关产品推荐

