繁体   English   中英

使用m2eclipse开发Web应用程序的首选方法

[英]Preferred way of developing web applications with m2eclipse

在开发Maven Web应用程序时,我通常使用jetty-maven-plugin快速启动我的应用程序进行本地测试和调试。 使用m2eclipse启动的缺点是没有正确包含所有调试源,即使它们是由Maven下载的(参见源查找似乎不起作用 )。

在Eclipse中调试Maven Web应用程序的首选方法是什么? 我特别欣赏与gwt-maven-plugin一起使用的配置。

使用m2eclipse开发Web应用程序的首选方法是......不使用它。 相反,我使用Eclipse的Maven Jetty插件调试中描述的方法,我将在下面引用:

步骤1

转到“运行”菜单栏上的“运行/外部工具/外部工具...”菜单项。选择“程序”并单击“新建”按钮。在“主”选项卡上,填写“位置:”作为“ mvn ”可执行文件的完整路径。对于“工作目录:”,选择与您的webapp匹配的工作区。对于“Arguments:”,添加jetty:run

移至“环境”选项卡,然后单击“新建”按钮以添加名为MAVEN_OPTS的新变量,其值为:

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

如果你提供suspend=n而不是suspend=y你可以立即启动而无需运行调试器,并在你真正希望调试的任何时候启动调试器。

第2步

然后,拉出“Run / Debug / Debug ...”菜单项并选择“Remote Java Application”并单击“New”按钮。 通过为“Project:”字段选择webapp项目来填写对话框,并确保使用的是与上面address=属性中指定的端口号相同的端口号。

现在您需要做的就是运行/外部工具并选择您在步骤1中创建的maven工具设置的名称以启动插件,然后选择Run / Debug并选择您在步骤2中设置的调试设置的名称。

来自Rolf Strijdhorst在Maven邮件列表中提供的说明

停止码头

为了停止Jetty服务器,应在步骤2的调试对话框中检查“允许终止远程VM”。当您运行jetty服务器并连接调试器时,您可以切换到调试透视图。 在调试视图中,右键单击Java HotSpot(TM)客户端VM [localhost:4000]并选择终止。 这将停止调试器和jetty服务器。

尽量避免编写需要某种容器来调试的代码。 总是编写可以独立运行的代码并将其包装在一个非常薄的层中进行部署(薄层 - >几行代码 - >少量错误)。

如果你真的必须,请尝试使用MockRunner模拟应用服务器。

除此之外,您可以在项目属性中手动添加源。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM