在eclipse上,当您在项目上使用:tomcat7: RUN执行Maven RUN时,如果您更改了一些类,则不需要重新运行应用程序来检查更改。我想应该是"热代码交换"之类的。
在IntelliJ上可以这样做吗?
你有4个选择:
先按Ctrl + F10
你会看到:
- 更新资源和类
- 重新部署
- 重新启动服务器
第二个是答案。更多信息在这里:
http://www.jetbrains.com/idea/webhelp/updating-applications-running-on-application-servers.html编辑2018 : IntelliJ IDEA 2017.3.3
这是我发现的工作与Maven tomcat7:运行插件在IntelliJ IDEA 2017.3使用运行/调试配置。
创建运行/调试配置并在IntelliJ设置中配置Java热插拔后,必须在调试模式下运行此配置。
当Tomcat服务器运行时,您可以更改代码并使用ctrl+shift+F9重新编译, IntelliJ IDEA将弹出消息告诉您"某些类已更改"并询问"您是否要部署更新/更改?"(由于设置>询问)。回答是, IntelliJ将显示状态告诉您是否成功,在这种情况下,您可以再次发送POST/GET请求来测试您的更改,或者,如果失败部署更改,在这种情况下,您需要停止Tomcat并重新启动它。
部署变更的成功与否取决于您的变更是否被Java的Hot Swap特性所允许。参考JDK文档
以下是我的IntelliJ IDEA设置和我的运行/调试配置的图像:
Java热插拔设置
运行/调试配置注意:你可以在Before Launch部分添加选项来执行你可能需要的额外步骤,比如复制额外的"资源"文件到你的"target/classes"文件夹。例如,您可以调用带有外部工具选项的脚本,将您编写的额外"资源"文件复制到"目标/类"文件夹中。IntelliJ的文档解释了如何使用Before Launch功能