Max*_*ler 68 intellij-idea hotswap
Intellij似乎没有在我的安装上进行基本的热代码交换.
对于此代码:
public class MainTest {
public void method1() {
System.out.println("Breakpoint here");
}
public void method2() {
System.out.println("Line that will get 24 modified");
}
public static void main(String[] args) {
System.out.println("First print here");
MainTest mainTest = new MainTest();
mainTest.method1();
mainTest.method2();
System.out.println("Line that I do not modify");
}
}
Run Code Online (Sandbox Code Playgroud)
我mainTest.method1();在断开点然后在method2()处修改字符串,点击ctrl + s并继续一步一步.遗憾的是,运行时未更新,正在打印旧字符串.完全停止 - 编译 - 运行会打印新字符串.所以我的结论是热插拔不起作用.
是否需要设置任何设置才能启用热码交换?
jos*_*chi 85
在等待断点的同时保存您的课程后,只需重新编译您的课程Build -> Compile 'MainTest.java'或按Ctrl+Shift+F9标准键绑定.
然后,IntelliJ IDEA将显示一个小对话框,询问您是否要重新加载该类.
Ber*_*erk 14
在进行以下修改并启用热交换后,Java文件中的更改需要1-2秒的重新启动时间.(对我来说,初始开始时间约为7秒).
我希望以下方法有帮助......
首先,您需要在首选项菜单中选中"自动生成项目".
打开首选项菜单;
你可以转到顶部菜单然后点击;
IntelliJ IDEA - >首选项
或者您可以通过键盘输入以下快捷方式;
cmd +选项+ s
然后,您可以查看Make project automatically如下图所示;
其次,您需要将compiler.automake.allow.when.app.running注册表设置修改为true.
要打开注册表,您需要单击下面的键盘快捷方式:
cmd + shift + a
键入registry如下图所示,选择Registry,然后按键盘输入键;
Registry打开窗口后,键入compiler.automake查看compiler.automake.allow.when.app.running选项,并在下图中查看;
然而,您需要重新启动IntelliJ以使注册表更改起作用.
转到设置 --> 选择调试 --> 热插拔
Debugger > HotSwapintellij 11中有一个选项.
我希望每次保存 Java 文件时热交换都能自动运行。其他答案都没有这样做,所以我只是:
Action: Hotswap在宏末尾 ( Run -> Reload Changed Classes)| 归档时间: |
|
| 查看次数: |
70236 次 |
| 最近记录: |