2017-02-14 1 views
0

OSGI를 처음 사용하고 enRoute Base Turorial로 시작했습니다. 공급자 프로젝트를 jar 파일로 내보내고 concierge/felix에 배포하려고합니다. (설치/시작/중지 ..) 번들의 수명주기를 관리 할 수있었습니다. 문제는 내가 만든 명령이 결코 거기에서 그들을 볼 수 있지만 일식에서 gogo 명령이 존재하고 볼 수/그들을 실행할 수 있습니다.Apache Felix osgi 컨테이너에서 사용자 정의 명령을 볼 수 없습니다.

나는 이것을 파악하는 방법을 모르지만 gogo commandNotFoundException라고합니다. 이 두 옵션에는 어떤 것이 있습니까? (runfw + runee).

나는 창문에서 개발하고이 설정됩니다 runfw : org.eclipse.osgi 및 runee : JavaSE-1.8 을 나는 리눅스에서이 배포되면, 펠릭스/컨시어지 컨테이너는 컴팩트 한 임베디드 자바 SE에 그렇습니다 문제. 도움 주셔서 감사합니다.

+0

번들이'osgi.command.scope' 및'osgi.command.function' 속성이 첨부 된 서비스를 제공하는지 확인하는 것으로 시작하십시오. –

+0

답변 해 주셔서 감사합니다. 사실 내 번들은 그러한 서비스를 제공합니다. Apache Felix에서 help 명령을 실행하면 명령을 볼 수 있지만 Concierge에서는 gogo 번들을 설치 한 후에도 명령이 표시되지 않습니다. –

+0

'inspect cap service N' 명령의 출력을 표시 할 수 있습니까? N은 명령 서비스를 제공하는 번들의 번들 ID입니다. –

답변

0

실제로 문제가 무엇인지 알아 냈습니다. 컨시어지에서 내 번들을 실행 중이므로 gogo 번들을 설치했습니다. 문제는 gogo 1과 컨시어지 1이라는 두 개의 셸이 실행되었다는 것입니다. 컨시어지 쉘을 멈 추면 도움을받을 때 명령을 볼 수있었습니다.

감사합니다.

관련 문제