mom*_*omo 165 java intellij-idea java-ee jrebel
昨天我从Eclipse切换到了Intellij.
我也在使用jRebel和Websphere Server 7.
现在一切似乎都工作得很好,除了当我修改 Java文件并点击保存时,Intellij 不会重新编译该文件,以便jRebel获取它.
日食" 自动构建 "功能解决了这个问题.
在Intellij中,我必须按CTRL + SHIFT + 9重新编译jRebel的相关类才能获取它.如果在两个文件之间进行了更改,我必须在每个文件上执行此操作,因为Intellij使用了save all机制,所以很难知道手动重新编译的内容,我也不感兴趣.
难道没有办法让Intellij独自完成这项工作吗?
dan*_*dan 229
更新
对于IDEA 12+版本,如果我们使用外部编译器选项,我们可以自动构建已编辑的源代码.唯一需要的是检查"编译器设置"下的"自动构建项目"选项.
此外,如果您希望热部署,在应用程序运行时或者如果您使用的是Spring boot devtools,则还应启用compiler.automake.allow.when.app.runningfrom注册表.这将自动编译您的更改.
在注册表窗口打开后,使用ctrl+ shift+ A(或mac上的⌘+ shift+ A)类型Registry,找到并启用compiler.automake.allow.when.app.running,请参见此处:

sno*_*lli 73
请遵循以下两个步骤:
make project automaticallyMake Project automatically功能Registrycompiler.automake.allow.when.app.running并启用它,或单击旁边的复选框注意:立即重启您的应用程序:)
注意:这也应允许使用spring boot devtools进行实时重新加载.
Cra*_*der 66
Eclipse Mode插件已过时,与最近的IDEA 12+版本不兼容.如果您安装它,IDE将在每次更改文件时挂起,并且响应速度极慢.
IntelliJ IDEA不使用自动构建,它会动态检测错误,而不是通过编译器.类似于Eclipse模式将在IDEA 12中提供:

使用Build| Make,它调用增量make进程,该进程只编译已更改的和依赖的文件(速度非常快).
还有一个FAQ条目可能有所帮助.
更新自动make功能:运行/ debug配置运行时,Make project automatically无效.磁盘上的类只会在Build| 上更改 Make.这是核心设计决策,因为在我们看来,磁盘上的类更改应该始终在用户的控制之下.自动make不是Eclipse功能的模板,它的工作方式不同,它的主要目的是节省等待类真正需要时(在运行应用程序或测试之前)的时间.自动make不会替换您仍然需要触发的显式编译,就像在本问题中描述的情况一样.如果您正在寻找不同的行为,那么在上面的FAQ中链接的EclipseMode插件将是更好的选择.
Dan*_*lan 36
您可以通过键盘映射ctrl+s一步保存和编译.转到键盘设置并搜索Compile.
and*_*uso 14
实际上没有区别,因为两者都需要1次点击:
最简单的解决方案就是习惯它.因为当你在IDE中花费大部分时间时,最好在一个人中养成快速习惯,而不是在其中一些习惯中放慢习惯.
小智 10
我设法使用宏来解决这个问题.
我开始录制一个宏:
将它命名为"SaveAndMake".
现在只需删除Save all keybinding,并将相同的键绑定添加到宏中!
所以现在,每次我保存,它都会保存并进行脏编译,jRebel现在可以正确检测所有更改.
请仔细按照以下步骤启用它.
1)使用SB V1.3创建Spring Boot项目,并将"Devtools"(1*)添加到依赖项
2)调用Help-> Find Action ...并输入"Registry",在对话框中搜索"automake"并启用条目" compiler.automake.allow.when.app.running ",关闭对话框
3)在设置 - >构建,执行,部署 - >编译器"自动生成项目"中启用后台编译
4)打开Spring Boot运行配置,如果一切配置正确,你应该收到警告信息
5)运行您的应用程序,即时更改您的课程
请将您的经历和问题报告为此问题的评论.
| 归档时间: |
|
| 查看次数: |
142304 次 |
| 最近记录: |