我的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");
}
}
我在mainTest.method1();
处设置了断点,然后修改了method2()中的字符串,按下ctrl+s并逐步执行。不幸的是,运行时没有更新,旧字符串仍然被打印出来。只有编译-运行才会打印新字符串。因此我的结论是热交换不起作用。
是否需要设置任何设置以启用热代码交换?
- Ubuntu,JDK 1.6
- Intellij 10.5 Ultimate(评估版)
设置 -> 高级设置 -> 允许自动构建即使正在运行开发应用程序
。添加依赖项:spring-boot-devtools
。 - Nick Dong