没有在EclipseWTP和Tomcat中发布的serve模块的技术细节?
Eclipse的Web工具平台(WTP)允许您将Tomcat配置为“无发布的服务器模块”: Web内容将直接从动态Web项目的“WebContent”文件夹提供。自定义上下文用于使项目的依赖项在Web应用程序的类加载器中可用没有在EclipseWTP和Tomcat中发布的serve模块的技术细节?,eclipse,tomcat,tomcat7,eclipse-wtp,Eclipse,Tomcat,Tomcat7,Eclipse Wtp,Eclipse的Web工具平台(WTP)允许您将Tomcat配置为“无发布的服务器模块”: Web内容将直接从动态Web项目的“WebContent”文件夹提供。自定义上下文用于使项目的依赖项在Web应用程序的类加载器中可用 在5个步骤的过程中(只是开玩笑,你选择了#个步骤),技术上会发生什么,Eclipse生成的文件在哪里?我注意到Eclipse在tomcat lib目录中生成了一个org.Eclipse.jst.server.tomcat.runtime.70.loader.jar文件。其思
在5个步骤的过程中(只是开玩笑,你选择了#个步骤),技术上会发生什么,Eclipse生成的文件在哪里?我注意到Eclipse在tomcat lib目录中生成了一个
org.Eclipse.jst.server.tomcat.runtime.70.loader.jar
文件。其思想是直接从开发工作区的分散目录结构为web应用程序提供服务,没有将模块打包到jar中,而jar最终会在战争中变成WEB-INF/lib
主要好处是:
- 你不需要建立档案
- 更改工作区中的资源时,更改将反映在正在运行的webapp中,而无需重新部署webapp或重新启动服务器
META-INF/resources
中的库jar中,因此类和资源可能来自多个工作区目录
Tomcat7.0支持a和a,以基于分散的资源和类目录集合配置web应用程序
为了直接从Eclipse工作区为您的web应用程序提供服务,WTP会生成与您的项目结构相匹配的适当Tomcat配置
在$WORKSPACE/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/conf/server.xml
出于某种原因,WTP不直接使用Tomcat加载程序和上下文实现,而是有自己的WtpDirContext
和WtpWebappLoader
,它们略有不同但相似。(我相信这种方法比Tomcat中当前的解决方案更古老。TLD扫描有一些特殊的逻辑——我不确定最新的Tomcat版本是否仍然需要这种逻辑。)这些都包含在您注意到的org.eclipse.jst.server.Tomcat.runtime.70.loader.jar
中
如果没有未发布的服务模块,则在库模块的META-INF/resources
中更改web资源时,在浏览器中重新加载当前页面后,此更改将无法在运行的应用程序中直接看到