2009-11-11 6 views
5

알았어. 내가 완전히 go 고있어.Eclipse 이름 바꾸기가 완전히 작동하지 않습니다.

내 Eclipse 작업 공간 (약 25 개)에 몇 개의 Java 프로젝트가 있습니다.   대부분의 프로젝트는 링크 된 원본 폴더를 사용합니다.

Project1에서 클래스의 이름을 바꿀 때 다른 프로젝트의 해당 클래스에 대한 참조가 업데이트되지 않습니다. 프로젝트 내의 참조는 잘 업데이트됩니다.   다음 결과는 자동 재 컴파일시 컴파일 오류입니다.

나는 이클립스 3.5.1를 사용하고 있지만, 같은 동작이 3.4.0으로 표시하고이 문제를 해결하는 방법에 대한 3.4.2

모든 아이디어를했다?

현재 계획 - 20 분 동안 인터넷 검색을 한 후 - 연결된 소스 폴더를 프로젝트 폴더 자체의 OS 링크 (Linux에 있음)로 변환하는 스크립트를 작성하는 것입니다.   그러면 더 이상 연결된 원본 폴더를 사용하지 않습니다.

+0

다른 프로젝트의 클래스에서 클릭하거나 F3 키를 사용하면 어떻게됩니까? – Thimmayya

+0

예. Ctrl-Shift-G도 작동합니다. – daveb

+0

테스트 케이스 withlinked 소스 파일을 시도하고 예상대로 작동했습니다. 부분 리팩토링이 발생하고 일부 파일이 완전히 리팩토링되지 않았을 가능성이 있습니까? – Thimmayya

답변

0

프로젝트 간 상호 변경은 프로젝트가 서로 의존 할 경우 잘 작동합니다. 링크 된 원본 폴더가 정확히 무엇을 의미합니까? 동일한 원본 폴더에 두 번 이상 연결합니까?

+0

프로젝트 종속성이 정확합니다. 연결된 원본 폴더는 프로젝트에 없지만 다른 위치에있는 원본 폴더입니다. 이를 확인하려면 프로젝트의 빌드 경로를 편집 한 다음 소스 탭에서 "소스 링크"버튼을 볼 수 있습니다. 이런 식으로 원본 폴더를 연결했습니다. – daveb

0

이것은 어두운 곳에서 촬영 한 사진이지만 프로젝트가 Java 프로젝트인지 확인하십시오. 일반 프로젝트와 같은 다른 프로젝트 유형이 제대로 리팩터링하지 않을지 확실하지 않습니다. 나는 전에이 문제를 보지 못했으며 항상 나를 위해 기대했던대로 작동했다. ...

1

필립 Faes가 말했듯이, 프로젝트가 의존성으로 설정되어 있으면 잘 동작한다. 프로젝트의 빌드 경로가 그런 식으로 설정되어 있는지 확인하십시오.

IMHO 연결된 폴더는 외부 파일이며 다른 프로젝트에는 해당되지 않습니다.

또 다른 문제점은 종속성 (예 : 프로젝트의 클래스 경로)으로 jar를 참조하는 경우 Eclipse가 다른 프로젝트의 소스를 기반으로 빌드되었다는 것을 Eclipse가 알 수 없으므로 올바르게 리팩터링하지 않습니다 .

이클립스 프로젝트 파일 (.project 및 .classpath)에 대해 동료에게 질문하고 필요한 경우 파일을 편집 한 다음 리펙터가 여전히 작동하지 않는지 확인하십시오. 나는 당신의 프로젝트가 당신의 동료 들과는 다르게 설정되어 있다고 생각합니다.

관련 문제