Pio*_*och 11 debugging intellij-idea maven tomcat7-maven-plugin
我的问题是我无法使用tomcat7-maven-plugin运行远程调试.我用的是什么:
Truec默认提供Ofc Maven.我已经尝试过使用mvnDebug tomcat7:run命令,但是intelliJ没有在maven的内置命令行中解析mvnDebug短语.不能使用cmd命令行,因为我无法找到'home'路径,因为maven是内置的intelliJ.尝试使用intelli配置远程调试,但感到困惑.在"Maven Projects"窗口中也找不到tomcat7插件.但我确定它是,因为tomcat7:run命令启动tomcat容器和应用程序工作.
Ash*_*dal 24
在Intellij IDEA中,在Maven Projects选项卡中,向下挖掘tomcat7:run目标,然后右键单击并选择Debug如下:
在abouve,请注意第34行的断点HelloServlet.java.现在,只要您点击映射到servlet的URL(在本例中为http:// localhost:9090/hello),断点就会被点击,如下所示:
用于测试此代码的代码位于以下存储库:https://github.com/javacreed/how-to-run-embedded-tomcat-with-maven
对于不能够看到Plugins的Maven Projects(对不起,我错过了你提到这一点),请注意,Plugins是不是在"Maven项目"的顶级节点..但将是一个名为取自节点下<name>项目的根POM的.基于我自己对Intellij 2016.x的经验以及这个功能非常基本的事实,如果这是Intellij中的一个错误,我会感到非常惊讶.我建议这是你的pom.xml问题或(颤抖!)用户错误.
Plugins不可见Maven Projects从pom.xml(这里)开始,tomcat7插件位于该build -> pluginManagement -> plugins部分中.本节旨在用于根pom(如你所示)集中插件配置,然后只需提及插件即可由任何子模块继承.但是如果不这样做,tomcat7插件将无法在任何地方使用.因此,你必须在build -> plugins -> plugin某处有一个带有tomcat7 maven插件的部分(另请参阅相关问题:Maven:什么是pluginManagement?)
例如,以下更改(这是您的仓库的相应拉取请求):
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
</plugin>
</plugins>
Run Code Online (Sandbox Code Playgroud)
添加到<build>根pom的部分,立即导致插件部分以及tomcat7目标出现在Maven Projects:
您可以使用此命令运行带有maven的tomcat:
mvn tomcat7:run
如果要调试,请设置此maven选项:
export MAVEN_OPTS=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
如果您在Windows中,请使用set命令:
set MAVEN_OPTS=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
然后你可以使用Eclipse或Intellij进行调试.
希望这有帮助.
| 归档时间: |
|
| 查看次数: |
14533 次 |
| 最近记录: |