布拉姆提供了一个关于这个主题的出色教程,我可以推荐的另一个策略有时可以更快地设置远程调试。
目标是在tomcat或DSpace CLI的现有已部署DSpace Web应用程序中进入“远程调试模式”。然后你可以直接连接它,而不需要在Intellij中配置嵌入式tomcat。这很好,因为它可以在本地使用本地主机完成,也可以通过网络在现有开发服务器主机名/ IP上远程完成。
- 选择Run>编辑配置
- 选择添加(+)的选项>远程
- 配置远程设置,设置相应的主机/端口配置为您运行Tomcat或CLI主机位置,并提供一个适当的名称( DSpace Remote)
将第一个文本框设置复制到您的tomcat或CLI实例的env设置中。
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
4.a.对于[DSACE_HOME]/bin/dspace中的DSpace CLI,请在java命令之前添加以下行(请注意,我们将suspend设置为y,以确保我们有机会在应用程序执行前连接到调试端口
export JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005"
4.B有关Tomcat catalina.sh脚本在调试模式下启动tomcat已经提供的Tomcat配置导出ENV设置。(注意,我们设置暂停为n,这样的tomcat正常启动。
export JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
%TOMCAT_HOME%/bin/catalina.sh jpda start
一旦您已经启动了CLI应用程序或Tomcat,然后您可以连接您配置的调试设置。首先从t中选择您的调试配置他在工具栏上运行/调试下拉菜单,并使用“调试”图标以调试模式启动。
这将连接到调试端口(如果您有问题检查防火墙限制)。您现在应该可以设置断点,并在Intellij中在服务器上执行时逐步执行代码。
注意事项是,您需要完成整个mvn build/ant部署才能将任何更改导入运行的tomcat/cli应用程序。为了加快开发人员的周转速度,最好直接在intellij中运行war/cli,并且使用Bram的教程非常适合此目的。但是,如果这不可行,这是能够在现有的现场测试站点上进行调试的好选择。
干杯, 马克
只是为了确保我明白的问题:你已经运行行家,从思想内蚂蚁和Tomcat?如果您在IntelliJ中启动并停止Tomcat,则进入调试模式意味着打开启动调试按钮而不是tomcat的常规启动按钮。 – 2014-09-20 08:00:05
在IDEA中不运行任何它。基本设置只是使用IDEA来查看和更改代码。更改代码后,我手动重新部署:mvn包,ant更新,tomcat重启。在试图遵循IntelliJ指南的时候,它提到了部署一个神器,我不知道该放什么东西。 (Tomcat服务器配置的“部署”选项卡)。 – 2014-09-25 13:48:53