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를 누르고 단계별로 계속합니다. 불행히도 런타임이 업데이트되지 않고 이전 문자열이 인쇄됩니다. Full stop-compile-run은 새 문자열을 인쇄합니다. 그래서 내 결론은 핫스왑이 작동하지 않는다는 것입니다.
핫 코드 스왑을 활성화하기 위해 설정해야하는 설정이 있습니까?
- Ubuntu, JDK 1.6
- Intellij 10.5 Ultimate (평가)
답변
중단 점에서 대기하는 동안 클래스를 저장 한 후 클래스를 다시 컴파일 Build -> Compile 'MainTest.java'
하거나 Ctrl+Shift+F9
표준 키 바인딩으로 누르십시오 .
IntelliJ IDEA는 해당 클래스를 다시로드 할 것인지 묻는 작은 대화 상자를 표시합니다.
답변
아래에서 수정하고 핫 스왑을 활성화 한 후 Java 파일을 변경하면 다시 시작하는 데 1-2 초가 걸렸습니다. (초기 시작 시간은 약 7 초입니다.)
아래 방법이 도움이 되었기를 바랍니다.
먼저 환경 설정 메뉴에서“자동으로 프로젝트 만들기”를 체크해야합니다.
기본 설정 메뉴를 열려면
상단 메뉴로 이동하여 클릭 할 수 있습니다.
IntelliJ IDEA-> 기본 설정
또는 키보드를 통해 바로 가기 아래에 입력 할 수 있습니다.
cmd + 옵션 + s
그러면 Make project automatically
아래 그림과 같이 확인할 수 있습니다 .
둘째, compiler.automake.allow.when.app.running
레지스트리 설정을 true 로 수정해야 합니다.
레지스트리를 열려면 아래 바로 가기 키를 클릭해야합니다.
cmd + 시프트 + a
입력 registry
선택 아래 그림과 같이 Registry
, 키보드의 버튼을 Enter 키를 누르십시오;
후 Registry
창이 열립니다 입력 compiler.automake
확인 compiler.automake.allow.when.app.running
옵션을, 그리고 아래 그림과 같이 그것을 확인;
그런 다음 IntelliJ를 다시 시작하여 레지스트리를 변경해야합니다.
답변
Debugger > HotSwap
intellij 11 에는 옵션 이 있습니다 .
답변
답변
Java 파일을 저장할 때마다 핫스왑이 자동으로 실행되기를 원했습니다. 다른 답변 중 어느 것도 이것을하지 않았으므로 다음과 같습니다.
- 저장시 실행할 매크로 생성 : https://stackoverflow.com/a/5581992/14731
Action: Hotswap
매크로 끝에 추가됨 (Run -> Reload Changed Classes
)
답변
저와 같은 문제를 겪고있는 사람이라면 2020.2 업데이트에 영향을 미치는 다음 최근 버그가 발생했을 수 있습니다 . https://youtrack.jetbrains.com/issue/IDEA-247530?_ga=2.116305920.729836936.1599654650-984156210.1599654650
TL; DR 해결 방법으로 Groovy 플러그인을 다시 활성화해야합니다.
답변
우분투에서이 문제가 발생했습니다. 또한 IntelliJ가 파일 감시 제한에 대한 오류를 제공하는 명백히 관련없는 문제가있었습니다 (더 이상 정확한 오류 메시지가 없다는 점에 대해 사과드립니다). 이 문제를 해결하기 위해 다음 단계를 수행했습니다.
-
다음 줄을
/etc/sysctl.conf
파일 또는 디렉토리idea.conf
아래 의 새 * .conf 파일 (예 :)에 추가합니다/etc/sysctl.d/
.fs.inotify.max_user_watches = 524288
-
그런 다음이 명령을 실행하여 변경 사항을 적용합니다.
sudo sysctl -p-시스템
이제 내 React 구성 요소가 다시 빌드되고 핫 스왑됩니다.