【发布时间】:2010-06-01 03:00:37
【问题描述】:
我在 windows XP 上使用 sysdeo tomcat 插件 3.2.1 和 eclipse 3.5.1 (Galileo) 和 tomcat 5.5.23。 我可以让tomcat插件在eclipse中工作,并将devloader.zip解压到[tomcat]\server\classes。 我还更新了上下文,现在它有这个条目:
<Context path="/myapp1" reloadable="true" docBase="F:\Work\eclipse_workspace\myapp1" workDir="F:\Work\eclipse_workspace\myapp1\work" >
<Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/>
<Loader className="org.apache.catalina.loader.DevLoader" reloadable="true" debug="1" useSystemClassLoaderAsParent="false" />
</Context>
我已经激活了 devloader(在 Project > Properties > Tomcat > Devloader Classpath 中)并且已经“检查”了我所有的类和 jar,我还没有“检查”commons-loggin.jar jsp-api.jar、servlet-api .jar。
所以在通过插件启动 tomcat 时,我可以使用 devloader 运行它,如 eclipse 控制台视图所示
[DevLoader] Starting DevLoader
[DevLoader] projectdir=F:\Work\eclipse_workspace\myapp1
[DevLoader] added file:/F:/Work/eclipse_workspace/myapp1/WEB-INF/classes/
[DevLoader] added file:/F:/Work/eclipse_workspace/myapp1/WEB-INF/lib/activation.jar
但是,如果我什至将单个 System.out.println 添加到任何 java 文件中并保存它,整个应用程序都会重新加载(大约需要 80 秒),这与停止/启动 tomcat 本身一样好。 我尝试在 catalina.bat 的 JAVA_OPTS 中添加 -Xdebug 但没有运气:(
你能指导我哪里做错了吗..
请注意,我可以在 tomcat 上“重新部署”整个应用程序,但这不是我需要的,我希望能够在编码/调试时对 java 类进行小的更改,而无需等待完整的应用重启。另一个烦恼是重启 tomcat/application 会导致 session/debug 进度丢失..
你能指导我如何去做吗?
PS:我没有明确使用任何 ant/maven 脚本,只是依靠 eclipse 为我进行构建(它确实如此)。
【问题讨论】:
标签: tomcat eclipse-plugin