2013-02-22 2 views
8

어제 필자는 프로젝트를 리팩터링하고 패키지의 레이아웃을 변경했습니다. 일부 패키지를 다른 패키지로 이동하고 새 패키지를 생성했습니다. 하지만 이제 JUnit 테스트를 실행하려고하면 리팩터링 후 이름이 변경되는 메소드에 NoSuchMethodError이 표시됩니다. 또한 메서드에서 다른 코드를 변경하면 IDEA는 여전히 이전 코드를 실행합니다. 파일 메뉴에서 "캐시 무효화"를 실행하려고했지만 컴퓨터를 다시 부팅하려고 시도했지만 결과가 없습니다. 문제가 될 수있는 곳은 어디입니까?Intellij IDEA가 변경을 감지하지 못함

편집 : 나는이 개 제안이

답변

1

당신은

  • 편집 테스트 구성 여기에 시도 할 수 어제 손으로 그들을 변경할 수 있도록 올바르게 .java 파일에 패키지 선언을 변경하지 않습니다 패키지에게 IDEA를 이동 한 후 그들이 당신이 기대하는 것을 가리키고 있는지 확인하십시오. 때로는 실행 구성에서 픽업되지 않고 수동으로 변경해야하는 리팩토링을 보았습니다.
  • 프로젝트를 동기화하려고 시도하지만 프로젝트를 동기화하려고 시도하지 않습니다. 파일 -> 동기화. 프로젝트 최상위 수준에서 수행

편집과 관련하여 - 직접 본 적이 없습니다. 파일 (패키지 포함)의 이름을 변경하거나 이동할 때마다 이러한 변경 사항이 모든 해당 파일에 올바르게 적용됩니다. Refactor> Move/Refactor-> Copy로 리펙토링하고 있습니까?

+1

이것은 도움이되지 않았습니다. 나는 코드를 리팩터링하지도 않는다. 테스트 패스를 작성하는 코드 만 작성했습니다. 그러나이 코드는 intelliJ에서 테스트를 실행할 때 반영되지 않습니다. 하지만, "mvn clean install"을 실행하고 intelliJ에서 테스트를 실행하면 정상적으로 작동합니다. –

2

해결책 : 마술 2 일 후 사라

오류 :

  1. 내가 일식에서 일식과 실행의 JUnit 테스트로이 프로젝트를 수입했다. 그런 다음 IDEA로 돌아가서 모든 Eclipse 관련 파일을 삭제했습니다.

  2. 프로젝트 (파일 -> 동기화)를 동기화했습니다.

실제로 문제의 해결책 있었는지 모르겠지만, 제안을 내가 SeanLandsman의 대답 @

3

VCS를 허용 - IntelliJ에 갑자기 몰래 변경을 중지 할 때> 파일 상태 새로 고침은 날 위해를 해결했다.

0

또 다른 근본 원인이 될 수 있습니다

당신은 롬복를 사용하는 경우, 인 IntelliJ 롬복 플러그인/설치 제거 다시 설치하려고합니다.

그건 내 경우에 이상한 행동을 해결했습니다!

0

오래된 질문에 대한 대답,하지만 : 당신은 실행 구성을 사용하는 경우

, "실행/디버그 구성"대화 상자의 "시작하기 전에"절에 있는지 확인하십시오, 당신은 "빌드"추가 . 기본 설정에서 추가 한 경우에도이 대화 상자에서 가끔 제거되는 것 같습니다.

관련 문제