jetty调试mavenWEB项目

来源:互联网 发布:java空格符串转json 编辑:程序博客网 时间:2024/05/29 08:31

新项目决定用现在流行的maven结构来发开。

但由于maven的编译结果不是标准的sevlet结构,原来的eclipse+tomcat插件无法直接debug。

网上都说用jetty来调试,那就改用jetty吧。

用Jetty调试有两种方式。一开始网上找到的介绍比较多,用外部工具的方式,其实提麻烦的。


1.外部工具方式

首先要配置一个外部工具,来运行JETTY

Run->External Tools->External Tools Configurations...

双击Program 新建一个外部应用

在Main选项卡里Location里选择mvn的运行目录。比如我的:

/home/wang/install/apache-maven-3.2.3/bin/mvn

Working Directory选择要调试的WEB项目

Arguments 里输入jetty:run

(这应该相当于在命令行模式下进入项目根目录(pom.xml所在目录)。然后输入mvn jetty:run来启动WEB项目)

然后在Environment选项卡里,设置MAVEN_OPTS变量。记得用tomcat时也会输入CATALINA_OPTS,可以设置jvm参数,jmx接口等。

但这次主要是为了设置debug接口,值如下:

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=y。

配完之后,jetty服务器就能直接跑了。但如果想debug还要配置Remote Java Application.

Run->Debug Configurations,双击新建Remote Java Application

只需编辑Connect选项卡即可

Project选择要调试的WEB项目

Connection Type使用默认的Standard(Socket Attach)

Host: localhost

Port:4000

配置好后保存。

开始Debug时,先启动外部工具:jetty。控制台显示如下:

Listening for transport dt_socket at address: 4000

再开启Remote Java Application

就可以看到熟悉的debug信息了。


2.eclipse插件方式

进入eclipse 的marketplace界面。在Search选项卡的Find输入框里输入jetty。

可以找到Eclipse Jetty 的插件,我当时的版本是3.9.0。安装并重启eclips.

进入Debug Configuations的界面,可以发现多了一个Jetty Webapp的debug选项。

双击它新建一个Jetty Webapp项目,Project选择要调试的WEB项目。

WebApp Folder不用动,src/main/webaps就是maven的默认结构。

Context Path填好后,就可以直接debug了。 比方式一简单的多。




0 0
原创粉丝点击