IntelliJ IDEA中Java类资源的自动重新加载

IntelliJ IDEA中Java类资源的自动重新加载,java,class,intellij-idea,Java,Class,Intellij Idea,例如,在Eclipse中,当开发web应用程序时,即使程序正在运行,当在浏览器中查看时,包中HTML文件的任何更改都会自动反映出来 IntelliJ IDEA中的情况似乎并非如此。因此,每当我对HTML做一些小的更改时,我都需要重新运行这个程序。是否有一个设置可以启用此功能,或者根本不可能实现此功能?默认情况下,Eclipse会自动生成您的项目,而IntelliJ不会。这就解释了行为的不同 您可以在需要重新加载资源时手动“make”(Ctrl+F9)。你不必重新启动你的应用程序,它应该会更快 或

例如,在Eclipse中,当开发web应用程序时,即使程序正在运行,当在浏览器中查看时,包中HTML文件的任何更改都会自动反映出来


IntelliJ IDEA中的情况似乎并非如此。因此,每当我对HTML做一些小的更改时,我都需要重新运行这个程序。是否有一个设置可以启用此功能,或者根本不可能实现此功能?

默认情况下,Eclipse会自动生成您的项目,而IntelliJ不会。这就解释了行为的不同

您可以在需要重新加载资源时手动“make”(Ctrl+F9)。你不必重新启动你的应用程序,它应该会更快


或者,您可以在编译器设置中启用它,但可能会导致环境冻结,所以这可能不是您想要的。

我使用的是Netbeans和带有Netbeans连接器的Google Chrome,当对代码进行任何更改时,它会在浏览器上自动更新。我不知道IntelliJ IDEA的任何特性。但我建议你试试netbeans

您可以从这个链接下载用于Google Chrome的Netbeans连接器。

在IntellJ IDEA中调试应用程序时,您可以从菜单中重新加载所有更改的类和资源:

运行
->
重新加载更改的类

如果调试war时启用了帧上刷新资源,则重新加载过程将自动完成。

1)确保在服务器启动时部署的工件是“分解”的,而不是打包的版本。(例如,参见本SO问题:)

2) 点击“运行”或“调试”按钮时,会出现一个对话框,显示可以执行的操作。选项“updateresources”和“updateresources和classes”都在不重新部署的情况下交换更改后的HMTL/CSS文件

或者,您可以使用Ctrl+F10进行更新。第一次使用时,它将显示相同的对话框,但您可以选择首选选项并勾选“不再询问”框。之后,它只需在切换到浏览器之前快速按CTRL+F10


还有一个选项可以在帧停用时更新已更改的资源,这似乎是您要求的Eclipse特性。有关如何设置的说明可以在此处找到:或者在此处找到另一个分步指南:

使用Gradle,您可以在后台运行连续构建。在项目的根文件夹中运行:

./gradlew --continuous classes
或者,仅针对资产:

./gradlew --continuous processResources

它与spring boot开发工具一起工作。

如何通过intelliJ启动web应用程序?不确定Eclipse如何处理此问题,但intelliJ通常在构建项目时将所有相关资源项复制到输出目录,而不是在项目运行时。IntelliJ有一个自动构建项目的选项,但只能在项目当前未执行时进行。您在标题中提到Java类文件,但在问题中提到HTML文件。您正在尝试重新加载HTML文件和Java类资源吗?另外,您使用的服务器是什么?您使用的是像Tomcat这样的servlet容器吗?@RyanJ我猜eclipse在更新工作区中文件的任何更改时都会从bin文件夹运行所有内容。然而,IntelliJ似乎在跑步前就做好了准备。我不知道这意味着什么。@ChristianWilkie我把它称为“Java类资源”。我正在使用NanoHTTPD实现并从Java包中加载html文件作为类资源(
getClass().getResource()
),我已经选择了“不再询问”框,如何恢复?