有谁知道如何JSP
在IntelliJ IDEA中调试?
当我在我的JSP
文件中设置断点时,这些断点似乎永远不会生效.调试器永远不会命中它们.IDEA似乎认为断点是有效的.我确实看到一个红点放在我放置断点的线的左边.
我在的IntelliJ版面为已读在这个岗位是JSP
文件必须在WEB-INF调试工作.
但后来我也读到,JSP
用户无法直接访问web-inf下的文件.
我不确定谁是对的.
对于Intellij中的JSP调试,有一些配置必须按顺序排列.Intellij总是允许您在JSP行上添加断点这一事实并不一定意味着您已经配置了JSP调试.在下面我指的是Intellij 8配置,对于以前的版本,你需要做类似的操作,因为概念是相同的.
要启用JSP调试,您必须执行两个步骤:在项目中设置Web应用程序配置并添加Web应用程序服务器配置.
Web应用程序配置:为了进行JSP调试,您必须在项目结构中有一个"web"方面,指向正确的web.xml文件.根据您使用的Web应用程序结构的类型,Intellij可能会自动检测构面(无论如何要检查它已完成的内容),或者您可能需要手动添加它.请记住在"Java EE构建设置"选项卡中设置为"创建Web构面爆炸目录"; 如果你不想复制,一个技巧就是启用它并指向你现有的目录.
(Web)应用程序服务器:转到"编辑配置",您必须添加到应用程序服务器的配置,而不是像任何其他应用程序一样启动Web服务器.通过这种方式,Intellij将能够拦截JSP调用.在应用程序服务器列表中,您应该具有默认的Tomcat.在执行此操作之前,请确保已安装本地Tomcat,并在添加Web应用程序服务器时指向该安装.最后一个技巧是进入"部署"选项卡,并选择"部署源",即您在上一步中配置的相同方面.
如果您想使用其他Web应用程序服务器,我使用相同的配置,我使用最新的Caucho Resin版本测试它并且调试工作正常(它没有使用以前的Intellij和Resin组合).
如果您没有在要添加的可用应用程序服务器列表中看到Tomcat,请检查常规Intellij设置窗格中的插件:在最新版本中,越来越多的功能变得"可插拔",甚至可以禁用非常基本的功能; 这个插件叫做"Tomcat集成".
最后,JSP文件需要在WEB-INF下进行调试肯定是不正确的.
对于远程JSP调试(也适用于localhost
),您需要安装JSR45 ㄧ 支持插件.请注意,此功能仅在IntelliJ的Ultimate版本中受支持,而不是社区版本.
转到首选项 > 插件,搜索JSR45插件,然后启用它.
创建运行配置:运行 > 运行配置 >单击按钮,然后选择JSR45兼容服务器,然后在打开的对话框中选择远程,并设置服务器主机和端口.设置Application Server:Generic应该可以正常工作. +
确保在" 启动/配置" >" 调试"中设置了正确的端口.
打开模块设置(项目文件夹上的F3),在Facets下添加Web Facet,在Web Resource Directories下指定JSP根文件夹.
单击Configuration...按钮,然后选择包含JSP所依赖的bean,类和库的文件夹.
现在JSP断点应该可以工作,前提是您使用正确的调试参数启动了服务器.
无论如何,您需要在IDEA中启动Tomcat,而不是从远程Tomcat启动.