这几天在在写代码的时候一直都存在一个问题,就是把项目发布到comcat后在webapps下找不到项目,而work下面却有临时文件,浏览器也能正常访问,百度后网上的答案大都是
⑤找到servers location,选择第二个(User tomcatInstallation)
⑥修改deploy path为webapps
而我的tomcat刚用的时候就配好了的,所以不存在上述的问题,最后原因是Serve Modules without publishing我大上了勾,当时也不知道是啥意思,现在对收集到的资料做一下总结:
(1)Serve Modules without publishing:
让tomcat直接使用WebContent下的东西
省去publish到<workspace>\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
勾上它会将tmp0\wtpwebapps下相关的resources删除,
同时会修改Servers/Tomcat v6.0 Server at localhost-config/servers.xml中的serveModulesWithoutPublish=true
以及tmp0/conf/server.xml中的<Context>配置,同时,如果设置成交给comcat控制,发布目录设置成comcat的webapps,只要在这个项目打上勾,也不会发布到comcat的webapps目录下,也就出现了我的情况。
(2)publish module contexts to separate XML files
勾选 上后会修改Servers/Tomcat v6.0 Server at localhost-config/servers.xml中的saveSeparateContextFiles=true
同时将tmp0/conf/server.xml中关于该app的<Context>元素
移动到tmp0/conf/Catalina/localhost/appName.xml中
(3)勾选上Automatically publish when resources change
这样修改JSP后tomcat能热加载。(这个选项对java文件无效,关了以后每次也能热加载)
注意:hot reload只在debug模式下有效.
参考:https://my.oschina.net/uniquejava/blog/80945