Intellij Idea8.1+tomcat+修改类不重启服务器

1.新建一个Web工程,例如一个Sample工程。这里例子使用struts2框架。

2.建好工程后,菜单项File-> Project Stucture打开工程项目配置

配置classes的输出目录,输出到web应用下的WEB-INF\classes目录下。

 

Web Settings配置实用默认就行了不需要做修改,注意Web配置的Java EE Build Settings,Exclude From module content选项去掉,修改Create Web facet exploded directory的目录,修改为与项目工程的web目录相同,也就是与Web Settings的Web Resource Dirctories目录相同。

打开菜单 Run –> Edit Configurations。

 

 

新增一个Romote的运行方式 Name随便写。然后Copy

JVM的运行参数,JDK1.4+就用上面的-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005这段参数,否则使用-Xnoagent -Djava.compiler=NONE -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005这段参数。

 

接下来就是配置Tomcat了。

修改server.xml文件,

<Context path="/sample" docBase="D:\work\sample\web" />

 

接下来就是比较关键的一步了。在TOMCAT_HOME目录新建一个remote.bat的批处理文件,内容如下:

set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
catalina.bat run

其中JAVA_OPTS的内容就是之前设置remote运行方式拷贝的内容,由于我用的是jdk1.6,所以就使用上面的参数了。

 

配置完成,以后就使用remote.bat来运行web应用,运行remote.bat就可以运行之前配置好的tomcat-debug了, ,点击绿色的调试按钮,连接上tomcat上的5005监听端口,以后在修改方法体内部代码都不需要重启服务器了,只需要编译一下,编译好后服务器自动加载更新类文件。Idea也会提示是否加载成功。如果提示失败则可能你添加了一些方法,或者新增了一些类。失败后需要重启tomcat,相应remote的运行也会自动关闭,需要重新运行。

 

此方法也适用其他的应用服务器,也适合例如eclipse,netbeans等java ide工具,前提是这些ide必须支持remote调试,也就不再需要服务器的插件了。

你可能感兴趣的:(tomcat,应用服务器,Web,socket,Netbeans)