我有一个带有根模块的maven项目,名为“sample”,两个子模块位于自己的目录“sample-services”和“sample-web”中。 “sample-web”是一个依赖于“样本服务”的战争模块
我希望能够从maven运行我的服务器(可能是jetty,tomcat或任何轻量级服务器)并调试我的代码而不使用eclipse或intellij idea j2ee集成(例如在Intellij Idea社区版或其他IDE中)它支持远程调试器),只需添加远程调试器即可。
我可以使用“jetty:run”启动我的应用程序并附加调试器,但问题是,当我在“sample-services”中更改我的代码时,除非我在其上运行“mvn install”,否则它不会启动它单独模块并重新启动服务器。
是否有更好的方法可以调试应用程序并让服务器重新部署代码更改而无需重新启动服务器? 我知道eclipse可以为maven项目做到这一点。它将检测依赖项目中的更改并将其上载到服务器。
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.0.3.v20130506</version>
</plugin>
修改:
我现在最终使用tomcat maven插件: org.apache.tomcat.maven tomcat7 - Maven的插件 2.1 / 真正 在你的pom.xml中并在命令行中运行:mvn tomcat7:run 缺点是,这将在每次更改时重新加载整个应用程序,而不是热部署。
所以现在我正在寻找一种热部署替代方案。