OSGi 애플리케이션을 위한 라이브러리 구성

각각의 OSGi 애플리케이션은 제공된 API 세트와 해당 자체 내부 클래스에 액세스할 수 있습니다. 공유 라이브러리에서 추가 패키지에 대한 액세스를 제공하기 위해 공유 라이브러리도 구성할 수 있습니다.

이 태스크 정보

각각의 OSGi 애플리케이션에는 실행 중인 Liberty 서버에 자체 OSGi 번들 세트를 가지고 있습니다. 각각의 OSGi 번들은 필요한 패키지와 다른 OSGi 번들이 사용할 수 있도록 제공하는 패키지를 지정합니다. OSGi 애플리케이션에 있는 번들은 동일한 OSGi 애플리케이션에 있는 다른 번들이 제공하는 모든 패키지에 액세스할 수 있습니다. 또한 OSGi 애플리케이션에 있는 OSGi 번들은 Liberty 서버가 제공하는 API 패키지에 액세스할 수 있습니다. 공유 라이브러리는 OSGi 애플리케이션이 사용할 API 패키지를 제공하는 데도 사용할 수 있습니다.

라이브러리는 여러 OSGi 애플리케이션에서 공유할 수 있습니다. Java EE 애플리케이션을 포함하여 모든 애플리케이션이 공유 라이브러리가 제공하는 동일한 클래스를 런타임 시 사용할 수 있습니다.

프로시저

  1. ${WLP_USER_DIR} 디렉토리 아래의 servers/defaultServer 디렉토리에서 mylib/osgi 디렉토리를 작성하십시오. 예: wlp/usr/servers/defaultServer/mylib/osgi.
  2. osgi-lib.jarcommons-lang.jar 파일을 새 폴더에 복사하십시오.
  3. 라이브러리가 로드되도록 애플리케이션에 대해 공유 라이브러리를 구성하십시오. server.xml 파일 또는 포함 파일에서, 다음 코드를 추가하여 라이브러리를 정의하십시오.
    <library id="mylib">
        <fileset dir="${server.config.dir}/mylib/osgi" includes="*.jar" scanInterval="5s">
    	</library>
    참고: library 요소는 쉼표로 구분된 fileset 요소 ID 목록으로 filesetRef 속성을 가져올 수도 있습니다.
  4. OSGi 애플리케이션이 라이브러리가 제공하는 패키지에 액세스하여 라이브러리의 단일 사본을 공유할 수 있도록 라이브러리를 OSGi 라이브러리로 참조하십시오. server.xml 파일 또는 포함 파일에서 다음 코드를 추가하십시오.
    <osgiLibrary libraryRef="myLib"/>
  5. 선택사항: OSGi 애플리케이션에서 액세스할 수 있도록 패키지 목록을 구성하십시오. 공유 라이브러리에 포함된 패키지는 osgiLibrary 요소를 사용하여 라이브러리가 구성된 경우 OSGi 애플리케이션이 액세스할 수 있습니다. OSGi 애플리케이션이 액세스할 수 있는 패키지를 추가적으로 제어하기 위해 패키지가 나열될 수도 있습니다. 패키지 구문은 OSGi Export-Package 헤더 구문을 사용하여 각 패키지를 정의합니다. server.xml 파일 또는 포함된 파일에서 패키지를 나열하려면 다음 코드를 추가하십시오.
    <osgiLibrary libraryRef="myLib">  
        <package>org.example.osgi.lib.pkg1; version=1.0</package>  
        <package>org.example.osgi.lib.pkg2; version=1.1</package>
    </osgiLibrary>
    참고: 패키지 요소가 사용되지 않는 경우에는 라이브러리가 제공하는 패키지를 찾기 위해 라이브러리를 스캔합니다. 발견되는 각각의 패키지는 기본 버전인 0.0.0을 가져옵니다.

주제의 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_admin_osgiappl
파일 이름: twlp_admin_osgiappl.html