2014-11-04 1 views
0

Equinox를 기반으로 거대한 OSGi 번들 세트를 개발하고 Eclipse 내에서 "OSGi Framework"실행 구성으로 시작합니다. 필요한 모든 번들 및 데이터가있는 프레임 워크의 시작은 1-2 분이 걸렸으므로 DCEVM 및 JRebel을 사용하여 변경된 클래스를 핫 전개합니다.작업 공간 변경시 osgi 번들 다시 시작을위한 Eclipse 툴링

이제는 Java 8에서이 메소드가 더 이상 제대로 작동하지 않습니다 (DCEVM은 Java 7에서만 사용할 수 있으며 JRebel에는 제한된 디버그 세션, 추가 된 인스턴스 필드에 대한 지원 등). 우리 애플리케이션은 꽤 모듈화 되었기 때문에 클래스 변경을위한 작업 공간을 모니터링하고 증분 빌드가 끝난 후 영향을받는 번들을 다시 시작하는 Eclipse 함수 (플러그인을 통해?)를 상상해 봅니다.

이 작업에 도움이 될 수있는 툴링에 대해 알고 있습니까?

+0

사실, JRebel 6은 새로운 인스턴스 필드를 추가하는 기능을 추가했습니다. 그러나 실제로, 당신은 bndtools을 살펴보고 싶을 수도 있습니다. –

+1

예, 우리는 JRebel 6 베타 버전을 최근에 사용하여 오늘 eclipse 플러그인을 업데이트했습니다. 그러나 우리는 여전히 빈번한 클래스 로더 교착 상태와 신뢰할 수없는 코드 재로드를 경험합니다 (때로는 변경 사항이 적용되지 않고, 유용한 디버깅을 막을 수도 있습니다. – sreg

+0

이 문제는 JRebel 지원팀에 알려주십시오. –

답변

3

Bndtools은 이러한 환경을 제공합니다. 또한 다른 많은 방법으로 Eclipse 플러그인 관점보다 우수합니다. 예를 들어 선언적 서비스를 크게 지원합니다.

+1

그리고 저장시 실행중인 테스트 프레임 워크에 번들을 다시 배포합니다. –

+0

100 개 이상의 번들을 PDE에서 bndtools로 마이그레이션하는 가장 좋은 방법은 무엇입니까? https://github.com/duckAsteroid/bndtools-pde-migration을 보았지만 최신 버전으로 보지 못했습니다. – sreg

+0

표준 방법이 있다고는 생각하지 않지만, 표준 방법이 있다면 채택하는 것이 매우 흥미로울 것입니다. bnd (도구)에 홍보물을 제공하거나 누군가에게 자금을 지원할 수 있습니까? –