[intellij-idea] Intellij 핫 코드 스왑을 활성화하는 방법

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 > HotSwapintellij 11 에는 옵션 이 있습니다 .


답변

설정으로 이동-> 디버그 선택-> HotSwap

여기에 이미지 설명 입력


답변

Java 파일을 저장할 때마다 핫스왑이 자동으로 실행되기를 원했습니다. 다른 답변 중 어느 것도 이것을하지 않았으므로 다음과 같습니다.

  1. 저장시 실행할 매크로 생성 : https://stackoverflow.com/a/5581992/14731
  2. 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가 파일 감시 제한에 대한 오류를 제공하는 명백히 관련없는 문제가있었습니다 (더 이상 정확한 오류 메시지가 없다는 점에 대해 사과드립니다). 이 문제를 해결하기 위해 다음 단계를 수행했습니다.

  1. 다음 줄을 /etc/sysctl.conf파일 또는 디렉토리 idea.conf아래 의 새 * .conf 파일 (예 :)에 추가합니다 /etc/sysctl.d/.

    fs.inotify.max_user_watches = 524288
    
  2. 그런 다음이 명령을 실행하여 변경 사항을 적용합니다.

    sudo sysctl -p-시스템

이제 내 React 구성 요소가 다시 빌드되고 핫 스왑됩니다.

출처