2012-07-04 2 views
1

을 지원하기 위해 무엇 춘분과 펠릭스 모두 작업 이클립스 PDE 최선의 지원을 할 몇 가지 구성 변경은?이클립스 구성은 듀얼 춘분/펠릭스 환경

다음 예는 현재 문제입니다. 이클립스 OSGi 프레임 워크 실행기를 통해 내 응용 프로그램을 실행할 수 있습니다. 마찬가지로, PDE에는 컴파일 문제가 없습니다. 펠릭스에서 실행하는 경우 그러나, 나는 얻을 것이다 NoClassDefFoundErrors :

java.lang.NoClassDefFoundError: org/w3c/dom/DOMException 

나의 이해는 여기에 잘못 내 이클립스 설치의이다; org.w3c.dom은 '기본'OSGi 패키지가 아니며 Eclipse에서 실행할 때로드해서는 안됩니다. 마찬가지로 org.w3c.dom.DOMException에 대한 내 코드에서 가져 오기가 오류가되어야합니다. 가져 오기 - 패키지를 선언 :

는 펠릭스를 위해이 문제를 해결하는 방법을 알고있다. 하지만 그건 내 질문이 아니야. 내 질문은 Eclipse PDE가 Felix와 더 밀접한 구성을 취하도록하는 방법이다. 기본적으로 패키지를로드하는 데 더 엄격하게 적용 할 수 있는가?

답변

1

내 생각에 Equinox 이 Felix와 유사하게 동작한다고 생각합니다. osgi.org에 명시된 바와 같이,이 퀴 녹스 (Equinox)보다 이클립스 레거시 (etclosure)의 것입니다.

는 지금까지 내가 아는 한, 이클립스에서 부팅 위임을 오버라이드 (override) 할 수있는 방법이 아니지만, 나는 종종이 문제에 직면 한대로 내가 잘못 입증 싶어요. 그 실행 레거시 모드로 bootdelegation 설정처럼

+0

감사합니다. 이클립스 실행기와 PDE에 집중하기 위해이 질문을 편집 할 것이다. –

0

이 울립니다. OSGi의 위키에서 다음 페이지를 참조하십시오 http://wiki.osgi.org/wiki/Why_does_Eclipse_find_javax.swing_but_not_Felix%3F

+0

여기에 전송되는 옵션이다 : -Declipse.ignoreApp = 사실 -Dosgi.noShutdown = 사실 -Dosgi.dev -Dosgi.debug =/가정/gravelld/이클립스 작업 공간/행복/com.elsten.bliss.bundle /의 .options -Declipse.log.level = ALL -Dbliss.obr.updaterepository = file : /home/gravelld/eclipse-workspaces/bliss/com.elsten.bliss.installer/release/bliss-bundle/repository.xml -Dfile.encoding = UTF-8 -classpath /opt/eclipse-indigo/eclipse/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar org.eclipse.equinox.launcher.Main. 그래서 아무 것도 볼 수 없습니다. 또한 PDE가 컴파일 할 때 PDE를 포착하지 않는 이유는 설명하지 않습니다. –

1

당신은 내가 전혀 PDE를 사용하지 않는 것이 좋습니다 서버 응용 프로그램을 개발하는 경우. 나는 번들을 개발하기 위해 maven과 maven 번들 플러그인을 사용하고있다. 그런 다음 Apache karaf에 배포합니다. 디버깅은 karaf dev : watch 명령과 원격 디버깅을 사용하여 매우 간단합니다. 필자는 PDE 기능을 놓친 적이 결코 없었으며 필자는 필자의 메이븐 빌드와 잘 작동하지 않았습니다.

+0

Maven이 Bnd인지 아니면 매니페스트를 직접 관리하고 있습니까? 내 이해는 후자를 수행하는 경우 * 두 장소 * 종속성을 지정해야한다는 것입니다. –

+0

내부적으로 bnd를 사용하는 felix의 maven 번들 플러그인을 사용합니다. 따라서 종속성을 지정하는 데는 하나의 장소 만 있습니다. 또한 Bnd는 대부분의 종속성을 자동으로 탐지합니다. 그래서 대부분의 시간은별로 할 일이 없습니다. –

+0

여기에 전체 예제가 있습니다. http://www.liquid-reality.de/x/DIBZ –