이 콘텐츠는 선택한 언어로 제공되지 않습니다.

2.2. Sample OSGi Application


Example of bundle dependencies

Figure 2.2, “Sample OSGi Application” shows an overview of a sample OSGi application consisting of five bundles, which illustrates the basic bundle types discussed in the previous section. The application is driven by the hello-consumer bundle, which imports a HelloParis service from the hello-paris bundle and imports a HelloBoston service from the hello-boston bundle.

Figure 2.2. Sample OSGi Application

The sample bundles

The sample OSGi application consists of the following bundles:
time-util
Fits the pattern of a library bundle. The time-util bundle is a utility library that can create Clock instances that tell the time in a particular time zone.
The time-util bundle is implemented using classes from the JDK and thus has no external package dependencies.
hello-paris
Fits the pattern of an API bundle. The hello-paris bundle consists of a single Java interface, which returns a greeting, getGreeting(), and gives the local time in Paris, getLocalTime().
The hello-paris bundle has the following external package dependency:
org.fusesource.example.time
Copy to Clipboard Toggle word wrap
hello-paris-impl
Fits the pattern of a provider bundle. The hello-paris-impl bundle implements the hello-paris API bundle.
The hello-paris-impl bundle has the following external package dependencies:
org.fusesource.example.hello.paris
org.fusesource.example.time
Copy to Clipboard Toggle word wrap
hello-boston
Fits the pattern of an API/provider combination bundle. The hello-boston bundle combines a Java interface and its implementation, where the Java interface returns a greeting, getGreeting(), and gives the local time in Boston, getLocalTime().
The hello-boston bundle has the following external package dependency:
org.fusesource.example.time
Copy to Clipboard Toggle word wrap
hello-consumer
Fits the pattern of a consumer bundle. The hello-consumer bundle imports the HelloParis OSGi service and the HelloBoston OSGi service and then invokes on these services to report the local times in Paris and in Boston.
The hello-consumer bundle has the following external package dependencies:
org.fusesource.example.hello.paris
org.fusesource.example.hello.boston
org.fusesource.example.time
Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat