Gestion des bibliothèques partagées

Les bibliothèques partagées sont des fichiers utilisés par plusieurs applications. Chaque bibliothèque partagée se compose d'un nom symbolique, d'un chemin de classe Java™ et d'un chemin natif pour le chargement des bibliothèques Java Native Interface (JNI). Les bibliothèques partagées vous permettent de réduire le nombre de fichiers de bibliothèque en double sur votre système.

Avant de commencer

Vos applications utilisent les mêmes fichiers de bibliothèque. Elles sont déjà déployées sur un serveur, ou vous êtes en train de les déployer.

A propos de cette tâche

Supposons que quatre applications utilisent le même fichier de bibliothèque,my_sample.jar . Au lieu d'avoir quatre exemplaires demy_sample.jar sur votre système une fois les quatre applications déployées, vous pouvez définir une bibliothèque partagée pourmy_sample.jar et que les quatre applications déployées utilisent celle-làmy_sample.jar fichier de bibliothèque.
Évitez les ennuis : Si vous ajoutez un nouveau JAR aux bibliothèques partagées définies pour votre système, n'oubliez pas de redémarrer la machine virtuelle Java (JVM) afin que cet ajout de bibliothèque partagée pour le nouveau JAR soit connu du système.

Les bibliothèques partagées isolées fournissent un autre moyen de réduire le nombre de fichiers de bibliothèque. Les bibliothèques partagées isolées peuvent avoir leur propre chargeur de classes, permettant à une seule instance des classes d'être partagée dans les applications. Chaque application peut définir quelles sont les bibliothèques partagées isolées à référencer. Différentes applications peuvent référencer différentes versions de la bibliothèque partagée isolée. Par conséquent, un ensemble d'applications partage une bibliothèque partagée isolée. A l'aide de bibliothèques partagées isolées, certaines applications peuvent partager une seule copie d'une bibliothèque A, version 1 alors que d'autres applications peuvent partager une seule copie d'une bibliothèque A, version 2, pour les deux instances en mémoire.

A l'aide de la console d'administration, vous pouvez définir des bibliothèques partagées pour les fichiers de bibliothèque que plusieurs applications utilisent, puis les associer à des applications ou des modules spécifiques ou à un serveur d'applications. Les instructions d'association des bibliothèques partagées se présentent comme suit :

  • Associez un fichier de bibliothèque partagée à une application ou à un module pour que les classes représentées par la bibliothèque partagée soient chargées dans un chargeur de classes local, pouvant se trouver au niveau de l'application ou du module.
  • Associez un fichier de bibliothèque partagée isolée à une application ou à un module pour que les classes représentées par la bibliothèque partagée soient chargées dans un chargeur de classes distinct, créé pour cette bibliothèque partagée.
  • Associez un fichier de bibliothèque partagée à un serveur pour que les classes représentées par la bibliothèque partagée soient chargées dans un chargeur de classes au niveau du serveur. Ce chargeur de classe est le parent du chargeur de classe d'application et le WebSphere® Application Server Le chargeur de classe extensions est son parent. Associer un fichier de bibliothèque partagée à un serveur permet d'associer le fichier à toutes les applications installées sur le serveur.

Au lieu d'utiliser la console d'administration pour associer une bibliothèque partagée à une application, utilisez un module facultatif installé. Vous associez une bibliothèque partagée à une application en déclarant le fichier .jar de la bibliothèque dépendante dans le fichier MANIFEST.MF de l'application. Pour un exemple, reportez-vous à la section 8.2 de la spécification J2EE (Java 2 Platform, Enterprise Edition) 1.4.

Procédure

  • Définissez une bibliothèque partagée à l'aide de la console d'administration.
    1. Créer une bibliothèque partagée .

      Sur un produit à un seul serveur, vous pouvez définir une bibliothèque partagée au niveau de la cellule, du noeud ou du serveur.

      Sur un produit à plusieurs serveurs, vous pouvez définir une bibliothèque partagée au niveau de la cellule, du noeud, du serveur ou du cluster.

      La définition d'une bibliothèque à l'un de ces niveaux ne place pas automatiquement la bibliothèque dans le chargeur de classes. Vous devez associer la bibliothèque à une application, à un module ou à un serveur pour que les classes représentées par la bibliothèque partagée soient chargées dans un chargeur de classes local ou au niveau du serveur.

    2. Associez chaque bibliothèque partagée à une application, à un module ou à un serveur.
      • Associer une bibliothèque partagée à un application ou module qui utilise le fichier de bibliothèque partagée.

        Si vous avez activé le paramètre Utiliser un chargeur de classes isolé pour cette bibliothèque partagée lors de la création d'une bibliothèque partagée, associez la bibliothèque partagée isolée à une application ou à un module afin d'utiliser un chargeur de classes distinct pour la bibliothèque partagée.

      • Associer une bibliothèque partagée à une application serveur afin que chaque application sur le serveur puisse utiliser le fichier de bibliothèque partagé.
  • Utiliser un package facultatif installé pour déclarer une bibliothèque partagée pour une application.
  • Supprimez une bibliothèque partagée.
    1. Cliquez sur Environnement > Bibliothèques partagées dans l'arborescence de navigation de la console pour accéder à Page des bibliothèques partagées .
    2. Sélectionnez la bibliothèque à partager.
    3. Cliquez sur Supprimer.

    La liste des bibliothèques partagées est régénérées. Le fichier de la bibliothèque n'est plus affiché dans la liste.