我试过netbeans和eclipse,但没有成功...(无法尝试IntelliJ idea)
我快速浏览了一下代码。
http://kickjava.com/src/groovy/servlet/TemplateServlet.java.htm
它给我的印象是.gsp页面在内存中被转换为.groovy servlet(Groovlet)(我可能错了)……
所以也许调试gsp并不像我想的那么容易…
那么,有人能告诉我怎么做吗?
pd:我所说的调试指的是一步一步地浏览代码,检查变量,添加监视,很明显,所有这些事情。不是(不是)好的旧的printf方法...
发布于 2009-10-31 00:21:54
您的GSP中的大多数逻辑都应该封装在TagLibs中,并且您可以调试它们(至少使用IntelliJ ),就像任何其他Groovy代码一样简单。
如果您的GSP中确实有大量的scriptlet代码(这是不应该的),并且您想要调试到其中,那么除了println之外,您不能做更多的事情。另一种可能是查看为GSP生成的Groovy代码的源代码。这可以通过向URL附加一个showSource参数来完成,如here所述。
发布于 2009-12-10 23:36:55
我使用了一个技巧:向任何控制器添加一个方法,比如static def debugme(def param) { def a = param },然后从gsp代码中调用它:<% ThisController.debugme(this) %>或<% ThisController.debugme(params) %>
(您知道在编辑控制器或视图后不必重新启动应用程序,对吗?)
我也不认为所有的逻辑都应该放在标记库中:特定于页面的逻辑应该在控制器或视图中清晰可见。我们将大部分逻辑放在控制器或域类中。
发布于 2010-02-23 06:16:48
将设置添加到Config.groovy,生成的gsp文件将写入一个目录: grails.views.gsp.keepgenerateddir='/some/existing/directory‘(目标目录必须存在且可写)
更多信息:http://jira.codehaus.org/browse/GRAILS-4422
应该可以使用标准Java调试器调试生成的groovy代码。那是很久以前的事了(当我为grails创建补丁的时候),我想我是用jswat (http://code.google.com/p/jswat/)来调试gsp的。我不能让eclipse找到源文件,但这可能在Spring Tool Suite Eclipse中起作用。您必须一步一步地调试groovy代码,并使用过滤器,否则您可能会失去分步点(因为闭包?)。那已经是另一回事了。
https://stackoverflow.com/questions/1649339
复制相似问题