web-dev-qa-db-fra.com

Quelle est la différence entre «Dépendances de module» et «Bibliothèques» dans IntelliJ IDEA?

Quelle est la différence entre "Dépendances de module" et "Bibliothèques" dans IntelliJ IDEA lorsque vous souhaitez ajouter un .jar bibliothèque à votre projet? Quelle est la case à cocher "Exporter" lorsque vous ajoutez votre .jar bibliothèque aux "dépendances de module" dans IntelliJ IDEA?

Dans chacune de ces manières, comment sont les classes et le code à l'intérieur du .jar bibliothèque intégrée à votre projet final (code) lors de la création du .jar fichier?

33
moorara

Les dépendances de module sont des classes, des archives, des bibliothèques et des ressources auxquelles vos fichiers de module font référence. Alors qu'une bibliothèque est un ensemble de fichiers de classe stockés dans une archive ou un répertoire.

La vérification d'exportation signifie que si elle est cochée, cette bibliothèque sera implicitement ajoutée à l'autre module qui fait référence à celui-ci.

Pour créer un fichier . Jar, vous devez créer un artefact. Artifact est un espace réservé de la sortie du bâtiment. Il existe des modèles prédéfinis pour créer des archives . Jar, . War, . Ear. Vous pouvez choisir jar pour créer un artefact jar. Par défaut, il est défini vide et vous devez définir le contenu de l'artefact. Vous pouvez y déposer la sortie compilée par glisser-déposer, mais ne le faites pas avec les archives de la bibliothèque. Parce que les bibliothèques dans ce cas seront empaquetées dans le fichier . Jar et vous devrez créer un chargeur de classe séparé pour les charger avant le démarrage de votre application. Au lieu de cela, vous changez le type d'artefact en Autre et faites glisser . Jar et les bibliothèques dépendantes dans racine de sortie. De cette façon, les archives de la bibliothèque seront copiées avec les fichiers créés . Jar. Vous devez également créer un MANIFEST.MF et spécifier Class-Path ici pour les bibliothèques dépendantes. Tous les fichiers seront stockés dans le répertoire que vous spécifiez pour créer l'artefact. Vous pouvez le construire en utilisant le menu Build Artifact.

12
Roman C

Si votre projet contient plusieurs modules, la "dépendance de module" définit les dépendances entre ces modules, mais les bibliothèques sont des classes compilées (généralement des fichiers jar, contenant éventuellement leurs sources et javadocs) qui sont utilisées par votre module.

Chaque module peut avoir ses propres bibliothèques et artefacts (par exemple un fichier jar de résultats) et peut dépendre d'autres modules sans dépendance circulaire.

10
Amir Pashazadeh

L'onglet Dépendances du module peut contenir Bibliothèques , Exporter signifie qu'une bibliothèque du module sera également disponible pour un autre module qui dépend de ce module.

Le jar final avec toutes les dépendances peut être créé en utilisant Artifacts .

4
CrazyCoder

"Dans IntelliJ IDEA, les bibliothèques peuvent être définies à trois niveaux: global (disponible pour de nombreux projets), projet (disponible pour tous les modules d'un projet) et module (disponible pour un module)."

  • La bibliothèque globale est définie via Structure du projet\Paramètres de la plate-forme\Bibliothèques globales
  • La bibliothèque de projet est définie via Structure du projet\Paramètres du projet\Bibliothèques
  • La bibliothèque de modules est définie via Structure du projet\Paramètres du projet\Modules\Dépendances
0
OSGI Java