Eclipse가 열려있는 동안 명령 줄에서 Maven을 실행해야합니다. 이것은 Eclipse를 혼란스럽게 할 수 있으므로 두 가지를 서로 다른 출력 폴더를 사용하도록 구성했습니다 (Maven은 target
에, Eclipse m2e는 target-eclipse
). 이것은 아주 잘 작동합니다.JUnit 테스트에서 Eclipse 프로젝트가 열려 있는지 여부를 어떻게 알 수 있습니까?
하지만 내 단위 테스트 중 하나에서 클래스 경로가 아닌 프로젝트의 일부인 클래스를로드해야합니다. 기본적으로, 나는 내 자신의 URL 클래스 로더를 빌드한다. 자, 문제가 있습니다 : 어떤 클래스 폴더를 추가할까요?
프로젝트가 열려있는 경우 target-eclipse/classes
이 올바른 선택입니다. 그렇지 않으면 target/classes
을 사용해야합니다.
Eclipse 폴더와 작업 영역 폴더를 알고 있다고 가정합니다. 프로젝트가 열려 있고 어떤 프로젝트가 아닌 Eclipse (Eclipse 플러그인이 아님)의 하위 프로세스에서 실행중인 Java 코드에서 어떻게 알 수 있습니까?
프로젝트를 닫을 때 폴더가 삭제되지 않기 때문에 폴더가 존재하지 않는 것이 좋습니다.
[편집] 기본적으로 내 질문은 : 이클립스 어딘가에 $workspace/.metadata
또는 $ECLIPSE_HOME/configuration
에 해당 정보를 저장해야합니다. 어떤 파일에서 볼 필요가 있습니까?
내가 말한 것처럼 : 나는 그 폴더를 안다. 프로젝트가 열려 있는지 여부를 어떻게 확인할 수 있습니까? –
확인. 나는 그 질문을 오해 한 것 같다. 어떤 프로젝트가 이클립스에서 열려 있으면 어떤 단위 테스트를하는 것이 완전히 어리석은 것처럼 보일 수도 있습니다. 왜 이것을 필요로하는지 자세히 설명해 주시겠습니까? 폴더는 폴더이며 프로젝트가 Eclipse에서 열려 있는지 여부는 완전히 무관합니다. –
My JUnit 테스트가 Jetty 서버를 시작하고 다른 프로젝트의 리소스가 변경된 경우 인스턴스를 다시 시작해야합니다. 이클립스는 클래스 구조의 변경으로 인해 배포가 방해 받는다는 불평을 항상하기 때문에 프로젝트를 추가 할 수 없습니다. JRebel을 사용할 수는 있지만 솔루션은 거의 작동합니다. –