Eclipse가 자원을 자동으로 새로 고칠 수 있습니까?


161

Eclipse (PyDev를 사용하는 3.4.2)는 내가 사용한 다른 IDE와 달리 비동기 리소스 (IDE 외부에서 편집 된 파일)를 처리합니다. 편집기가 열려있는 리소스 만 동기화되지 않은 것으로 간주됩니다 . Eclipse에서 모든 자원이 동기화되지 않을 수 있습니다.

즉, Eclipse 외부에서 파일이 변경된 후 검색을 수행하면 열린 편집기가 없어도 파일이 동기화되지 않았다는 오류 대화 상자가 표시됩니다. 내가 알 수있는 한 전역 새로 고침 명령이 없으므로 오류 대화 상자에서 프로젝트 이름 (여러 개의 프로젝트가 있음)을 읽고 각각 마우스 오른쪽 버튼을 클릭하고 새로 고칩니다.

에서 Refresh Automatically설정을 확인 Settings > General > Workspace했지만 효과가 없습니다. Eclipse에서 항상 비활성 자원을 디스크에서로드 할 수있는 방법이 있습니까?


Eclipse 3.7 이상에 대한 최신 답변은 두 번째 답변입니다.
Paul Verest

원격 시스템 탐색기 (RSE)를 사용하여 원격 파일과 동기화 할 수도 있습니다
Christophe Roussy


@Boris,이 질문은 몇 년 전에 요청되었습니다. 다른이 의 중복으로 표시해야 하나.
Glenn Slayden

답변:


199

이 문제는 Eclipse 3.7 (Indigo)에서 해결 될 것입니다. " 자동 새로 고침 "은 결국 리소스를 다시 동기화하지만 Windows의 경우에만 새로 고침 후크가 존재하므로 Linux 및 Mac OS에서는 파일 시스템을 주기적으로 폴링해야합니다.

3.7부터는 새로운 환경 설정 Settings > General > Workspace > Refresh On Access(일명 경량 새로 고침)이 있습니다. 이 환경 설정은 Eclipse가 자원이 '동기화되지 않음'을 발견하면 자원을 자동으로 새로 고치도록합니다. 파일을 열거 나 읽거나 검색 할 때 동기화 오류가 발생하지 않습니다.

참조 : https://bugs.eclipse.org/303517


61
이것이 옵션 이라는 생각을 혼란스럽게한다 . 동기화되지 않은 파일을 새로 고치지 않았습니다.
Christoffer Hammarström

18
:( 나는 옵션을 만들기 위해 오랫동안 열심히 싸웠다. 당신이 맞아, 미쳤어.
James Blackburn

6
이 옵션을 Eclipse 3.8 / 4.2에서 기본값으로 사용하려면 여기를 클릭하십시오. bugs.eclipse.org/340977
James Blackburn

5
그래도 IntelliJ IDEA를 사용합니다. 파일이 자동으로 저장되므로 파일 저장에 대해 걱정할 필요가 없습니다. 그냥 작동합니다. 파일이 디스크에서 변경되면 IDE에서 변경됩니다. 충돌이있을 때 경고하고 diff 및 merge 할 수 있습니다. 최악의 상황이 발생하면 지역 기록이 있으므로 몇 분 전에 언제든지 되돌릴 수 있습니다.
Christoffer Hammarström

1
@ ChristofferHammarström : Eclipse에는 로컬 히스토리도 있습니다. 파일 편집기에서 마우스 오른쪽 단추를 클릭하고> 비교> 로컬 히스토리를 클릭하십시오.
ccpizza

28

프로젝트 탐색기에서 프로젝트 노드를 클릭하고 F5 키를 누르거나 마우스 오른쪽 버튼을 클릭하고 새로 고침을 선택하면 해당 프로젝트의 모든 리소스가 새로 고쳐집니다. 또한 여러 프로젝트를 Ctrl + 클릭하면 여러 프로젝트를 동시에 새로 고칠 수 있습니다.

프로젝트를 한 번 클릭하면 CTRL + A를 눌러 모든 것을 선택할 수 있으며 F5는 필요한 것을 정확하게 수행해야합니다.

나는 기회를 얻을 때 이것을 테스트해야하지만, 이것이 과거의 비슷한 문제를 극복 한 방법이라고 생각합니다.


이 답변이 정기적으로 투표권을 받고 있음을 알았습니다. 이 질문은 특정 버전의 Eclipse를 나타냅니다 .3.4.2. James Blackburn의 답변에서 언급 한 것처럼 Eclipse 3.7 버전의 Eclipse 이전까지 비동기 자원을 새로 고치는 자동 방법은 없었습니다 . 이 답변에 설명 된 방법은 버전 3.4.2 (및 3.7 Indigo 이전의 다른 버전)에서이를 달성하는 유일한 방법입니다.


13
선택된 여러 프로젝트를 닫으면 새로 고칠 수 없습니다. 먼저 닫힌 프로젝트를 선택 해제해야합니다. 또는 패키지 탐색기 또는 네비게이터보기에서 프로젝트를 선택 하지 않은 경우 F5를 누르면 열려있는 모든 프로젝트가 새로 고쳐집니다 (빈 공간을 클릭해도 선택 취소하려면 Ctrl 키를 누른 채 클릭하십시오).
Tom Clift

71
누구에게도 불쾌하지 않지만 Eclipse가 수동으로 수행하는 방법에 대한 설명을 Eclipse가 자동으로 수행하는 방법에 대한 질문에 대한 대답은 왜 허용됩니까?
Srekel

9
@Srekel 게시 당시에는 이것이 @DNS가하고 싶은 일을하는 유일한 방법이었습니다. @James Blackburn의 최신 답변을 바탕으로이 질문이 처음 게시 된 후에 실제로보고되고 수정 된 문제가있었습니다. 최신 버전의 Eclipse에서는이 답변이 올바르지 않습니다. 그러나이 질문은 Eclipse 3.4.2를 구체적으로 인용합니다. 이것은 질문에 제시된 문제를 해결하는 방법입니다.
토마스 오웬스

21

동기화 IDE에서 문제점이 발생하는 것은 Eclipse IDE에서 일반적이므로이 옵션 창-> 환경 설정-> 작업 공간-> 기본 후크 또는 폴링을 사용하여 새로 고침을 확인해야합니다.


6
나는 이것이 적어도 Eclipse Mars 이후의 정답이라고 생각합니다.
Henno Vermeulen

1
이 확인란은 Ubuntu 14.04의 Eclipse 4.5에서 작동하지 않습니다. 파일을 외부에서 변경 한 후 Eclipse에서이 파일을 열거 나 새로 고치기 전에는 Eclipse가 해당 파일을 볼 수 없습니다. .css예를 들어 Eclipse에서 서버 응용 프로그램을 실행하는 동안 외부 편집기 에서이 파일을 업데이트 하면 브라우저에 파일 업데이트가 표시되지 않습니다 . 이 문제를 해결하기 위해 확인란을 실제로 작동시키는 이 플러그인 을 사용했습니다. 이 답변을 참조하십시오 .
Ruslan Stelmachenko 2016

이것은 버전에 대한 작업 옵션입니다Neon.3 Release (4.6.3)
Kimchi Man

Mac의 Neon.3에서 옵션은 기본 설정> 일반> 작업 영역> 기본 후크 또는 폴링을 사용하여 새로 고침에 있습니다.
jmelvin

5

전역 새로 고침이 있습니다-패키지 탐색기에서 아무것도 선택하지 않았거나 F5를 누르십시오 (또는 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 새로 고침을 선택하십시오). 물론 대규모 프로젝트가있는 경우 시간이 다소 걸릴 수 있습니다.


자동은 아니지만 매우 효과적입니다 (+1).
loved.by. 예수님

5

Eclipse Helios는 환경 설정> 일반> 작업 공간에 내장 된 화면 갱신 기능을 가지고 있습니다. 자동 빌드를 사용하지 않는 위치에 있습니다. 자동 새로 고침을 선택하십시오. 동일한 기능을 가진 플러그인은 Andrei Loskutov의 Filesync 플러그인입니다. 업데이트 사이트 주소는 http://andrei.gmxhome.de/eclipse/ 입니다. 설치하는 동안 Eclipse 3.5-3.7 플러그인> FileSync를 선택하십시오.


4

Java 7에 파일 시스템 후크에 대한 API가 있다고 가정하면 Eclipse에서 새로 고침을 더 잘 처리 할 수 ​​있다고 생각할 것입니다.

편집 : 실제로이 메커니즘을 사용하는 플러그인이 있습니다 : https://github.com/psxpaul/EclipseJava7Refresher


플러그인 주셔서 감사합니다. 그것 없이는 우분투의 이클립스는 "윈도우-> 환경 설정-> 일반-> 작업 공간-> 기본 후크 또는 폴링을 사용하여 새로 고침"이 활성화 된 경우에도 파일의 외부 변경 사항을 볼 수 없습니다.
Ruslan Stelmachenko 2016

3

이클립스 사이트에 기능 요청을 추가해야 할 수도 있습니다.

https://bugs.eclipse.org/bugs/

오래된 리소스를 자동으로 새로 고치기위한 환경 설정을 추가하는 것이 좋습니다.


3

Eclipse에서 글로벌 새로 고침이 실제로 누락되었습니다. 선택에 포함 된 프로젝트를 닫은 경우 모든 프로젝트를 선택한 다음 새로 고침 (예 : F5)을 실행하는 위의 절차는 작동하지 않습니다. 즉, 내가하는 것처럼 많은 프로젝트의 1/2이 닫히면 수십 개의 프로젝트를 통해 수동으로 Ctrl을 클릭하는 것을 알 수 있습니다. 이것은 매우 고통 스럽습니다. Eclipse가 닫힌 프로젝트를 단순히 무시하기를 바랍니다.


3

전역 새로 고침은 실제로 플러그인이 없으며 작업 공간의 모든 프로젝트를 선택하지 않고 일반 Eclipse에 존재합니다.

기본적으로 프로젝트 탐색기에서 모든 것을 선택 해제하고 F5를 누르십시오. 그렇게하려면 프로젝트 탐색기에서 선택한 리소스를 Ctrl + 클릭하고 F5를 누르십시오.


2

예, 액세스시 새로 고침이 오래되었습니다. 이에 대한 답변과 유사한 문의는 일반적으로 글로벌 자동 새로 고침을 활성화하도록 제안했으며,이 경우 대규모 원격 프로젝트의 경우 오래 걸릴 수 있습니다. 실제로 Refresh on Access는 원래 (<3.x) 기본 동작 이었어 야한다고 말하는 사람들이 있습니다.


2

빈 배치 파일을 실행하는 새로운 "외부 도구"실행 구성을 만들어이 문제를 해결했습니다. 실행 구성에서 완료되면 작업 공간을 새로 고치도록 할 수 있습니다. 그런 다음 Practically Macro를 사용하여 1) 마지막 외부 도구 실행 구성 (작업 공간 새로 고침)을 실행 한 다음 2) 마지막 디버그 실행 구성 (내 앱 실행)을 실행하는 매크로를 만들었습니다. "콘솔 할당"을 선택 해제하면 완료된 외부 도구 항목이 디버그 창에 표시되지 않습니다.


1

다른 사용자가 제안한 솔루션이 실제로 올바른 경우에도 Eclipse 용 " Refresh All "플러그인이 있습니다. 업데이트 페이지 를 Eclipse의 업데이트 사이트 목록에 추가 하여 IDE에 설치하기 만하면 됩니다.


2
이 링크를 클릭하면 404가 표시됩니다. 프로젝트가 아직 살아 있습니까?
Eran Harel

1
실제로,이 프로젝트는 죽은 것 같습니다 :(
Romain Linsolas

1

들어 시작하기 에 옵션이 자동으로 새로 고침 파일은

Window -> Preferences -> General -> Startup and Shutdown -> Refresh workspace on startup

이클립스에서 "신선한"시작을하려면 클릭하십시오. :)

버전 : Eclipse 4.12

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.