`

Intellij idea

阅读更多

IntelliJ IDEA与Tomcat整合的除错设定

 

Share
 

我们公司使用的Java AP Server主要都是使用Resin Server,最近因为一些因素开始试用Apache Tomcat,因此特别研究了IntelliJ IDEA与Tomcat整合时的除错操作,以下是设定的心得。

Tomcat本地端除错设定 (Local Debug)

 

  1. 启动IDEA,确认有安装了Tomcat Integration plugin。
  2. 由功能表做 Run/Debug 设定
    1. 【Run】→【Edit Configurations…】
      IDEA-Tomcat run edit
    2. 按左上角的+号并新增Tomcat Server的Local设定
      IDEA-Tomcat add Tomcat
    3. 按【Application server】最右方的〔Configure…〕,并于弹出视窗中指定Tomcat的系统目录。如果专案使用的HTTP Port不是8080,记得同步修改设定里的字段。
      〔Configure…〕画面里的Libraries里再加入c:\apache-tomcat-7.0.32\common\classes资料夹
      IDEA-Tomcat configure server
    4. 切换到“Startup/Connection”分页,按加号增加环境变量CATALINA_BASE,并设定其值为Tomcat的系统目录。 Run和Debug都分别新增后按〔OK〕储存。执行DEBUG时要注意Tomcat系统目录/bin里是否有setenv.bat并设定了remote debug的5005 port,若有则会造成IDEA Debug报错,执行Debug前先将setenv.bat 改名就能避免此错误。如果专案使用的JDK不是1.6版,则必须再增加环境变量 JRE_HOME (或JAVA_HOME)并设定其值为为1.6版的JDK系统目录(例如:JRE_HOME=C:\JDK1.6-64),因为Tomcat 7.0使用JDK 1.6,若没有指定JRE_HOME则默认会使用专案的JDK,后果是导致Tomcat启动失败。
      IDEA-Tomcat add env variables
  3. 用【Run】→【Debug ‘Tomcat’】开始除错。萤幕下方会出现运行时的讯息
    IDEA-Tomcat debug
  4. 开启一个系统里的.jsp档,在Java程式某行左侧加上中断点
    IDEA-Tomcat debug JSP
  5. 到IDEA自动开启的浏览器里浏览专案网页,当执行到有设定中断点的JSP时,IDEA会进入除错误模式,此时就能用Run选单里的Step Over (F8键)、Step In(F7键)、Resume program(F9键)等功能键来除错了。
    IDEA-Tomcat debug operations

 

Tomcat远端除错设定 (Remote Debug)

 

当要除错的Tomcat不是在本地端,或不是由IDEA启动而是独立执行的Tomcat,此时就必须使用远端除错。

 

  1. 由【Run】→【Edit Configuration…】新增Tomcat Server→Remote
    IDEA-Tomcat remote debug config
  2. 变更组态名称为Tomcat-Remote后切换到Startup/Connection分页,点击Debug并复制“-Xdebug -Xrunjdwp:transport=dt_socket,address=31284,suspend=n,server=y”。为了与惯用的 Resin remote debug相容,可以将Port 31284修改为5005。
    IDEA-Tomcat port
  3. 在c:\apache-tomcat-7.0.32\bin新增setenv.bat,加入以下内容;蓝色字体是Resin remote debug时IDEA产生的内容

 

SET CATALINA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=5005,suspend=n,server=y
  

 

4. 执行c:\apache-tomcat-7.0.32\bin\startup.bat以启动Tomcat
5. 点击IDEA的【Run】→【Debug ‘Tomcat-Remote’】,当网页执行到中断点时IDEA会进入除错状态。

 

##

原文网站: 简睿 JDev.tw

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics