How to debug with IntelliJ IDEA + Grails 2.3.x
来源:互联网 发布:linux下usb调试工具 编辑:程序博客网 时间:2024/05/18 20:46
问题:
最近访问grails.org,看到grails framework已经发展到2.3.x了,不免想尝尝鲜。下载了最新的grails-2.3.x之后,创建了一个新的grails app。
添加Book domain对象后有自动生成了BookController和相关gsp views。在对BookController进行调试的时候,发现无法进入设定的断点。起先以为是IDE版本(IntelliJ IDEA12.x.x ultimate)和Grails 2.3.x不兼容,但全部换上最新的IntelliJ IDEA 13和Grails 2.3.4之后,问题依然存在。
答案:
经过一番探索,终于找到答案,原来是grails 2.3.x之后,内嵌webserver换上了tomcat7,并且使用remote debug,IDEA点击debug就自动进入调试模式的功能没有了。但这需要开发者做若干设置才能调试。过程如下:
- 在IDEA的toolbar的debug区域,选择您的当前的Grails App,然后再点击Edit Configurations打开运行配置。
- 在Command Line栏修改run-app为run-app --debug-fork,点击OK按钮保存。
- 到这一步,大家都会遇到点击debug按钮后,grails app停到一行信息Listening for transport dt_socket at address: 5005之后,就没有了。连8080端口都访问不了,更不要提调试了。
- 实际情况是,你还要再做一步。回到Edit Configurations,点击左上角的+按钮,选择Remote,修改一下Unnamed名称,比如localdebug,保存即可(此界面上Host=localhost和Port=5005是可以修改的,这在非本机远程调试时就很有用了)。
- 回到IDEA主窗口,点击debug,开启调试localdebug,在Console上显示Connected to the target VM, address: 'localhost:5005', transport: 'socket',就表示成功了。打开浏览器访问http://localhost:8080/yourapp,即可进入断点调试功能。
- 补充1:run-app --debug-fork的替代方案是修改grails-app/conf/BuidConfig.groovy中的grails.project.fork,debug从false改为true
run: [maxMemory: 768, minMemory: 64, debug: true, maxPerm: 256, forkReserve:false] - 补充2:如果是运行于其他webserver,在JVM加上以下参数,也可以完成5005端口的监听,可用于远程调试。
-Xdebug -Xrunjdwp:server=y, transport=dt_socket,address=5005, suspend=n
希望对大家有所帮助!
PS:IntelliJ IDEA 13 windows版本缺少内置svn的支持,要么等13.0.1,要么自己安装一个svn client。
等13.0.1:http://youtrack.jetbrains.com/issue/IDEA-117518
安装svn client:http://www.sliksvn.com/en/download
安装完成后,要配置一下用户环境变量PATH,把C:\Program Files\SlikSvn\bin加到PATH中去。
0 0
- How to debug with IntelliJ IDEA + Grails 2.3.x
- How to see JavaDoc in IntelliJ IDEA?
- Compile Less to CSS with IntelliJ IDEA
- How to debug shared librarys with gdb?
- How to debug unusual component with WinDbg
- HOW-TO:Debug Python Scripts with Eclipse
- How To Debug Web Applications With Firefox
- HOW-TO:Debug Python Scripts with Eclipse
- How to debug kernel with QEMU-KVM
- Intellij IDEA远程debug
- IntelliJ IDEA debug调试
- intellij idea之debug
- How to contribute to open source with idea
- IntelliJ IDEA 15.0.2导入grails工程
- 使用IntelliJ IDEA搭建grails web工程
- Maven with IntelliJ IDEA
- How To Debug Memory Leaks with XCode and Instruments Tutorial
- How to run debug SQL with in front end(EBS)?
- NHibernate常用
- telnet命令的完整使用方法
- 修改 skype 聊天记录 存储文件夹
- 多线程第四篇:event线程同步
- WebService对象可空的困惑,关于nillable和minOccurs
- How to debug with IntelliJ IDEA + Grails 2.3.x
- 练习:输入5个数字,取最后一个数字加上中间第二到四个数字,最后加上第一个数字,然后用alert显示出来
- dataTables-使用详细说明整理
- Win7 IE9下QTP11中FireEvent与SendKeys的使用实践
- 解决IOS7下UIBarButtonItem位置有偏移的问题
- SVN使用---与资源库同步
- UDP中四种不同的NAT类型及检测方法【转发与点评】
- html link rel='stylesheet' 什么意思?
- Oracle RAC 常用维护工具和命令