web-dev-qa-db-fra.com

Java Package Vs Folder-Structure? Quelle est la différence

Je voudrais savoir quelle est la différence entre la structure des dossiers et le package utilisé dans Eclipse IDE for Java EE development).

Quand utilisons-nous lequel et pourquoi?.

Quelle devrait être la pratique

  • créer une structure de dossiers comme src/com/utils, puis créer une classe à l'intérieur
  • créer un package comme src.com.util, puis créer une classe à l'intérieur

quelle option serait meilleure et facile à déployer si je dois écrire un script ant plus tard pour le déploiement?

si je choisis la structure de dossiers, le déploiement est-il aussi simple que de copier des fichiers du développement vers la cible de déploiement?

54
Mrinmoy

Si vous avez configuré les trucs correctement. L'ajout d'un dossier dans src, revient à ajouter un package à partir de File > New Package.

Donc, c'est à vous de décider, tout ce qui vous convient - ajoutez un dossier ou créez un package. De plus, lorsque vous placez des éléments sous src, le nom du package commence à partir du sous-dossier. Alors, src/com/naishe/test sera le package com.naishe.test.

38
Nishant

Fondamentalement, il n'y a pas de différence, les deux sont les mêmes.

Dans les deux cas, la structure des dossiers sera src/com/utils.

et dans les deux cas, vous devrez mentionner

package com.utils;

comme première ligne dans le class

Comme il n'a pratiquement aucune différence, cela ne fera aucune différence pour ant script.

14
dku.rajkumar

"L'empaquetage nous aide à éviter la collision des noms de classe lorsque nous utilisons le même nom de classe que celui des autres. Par exemple, si nous avons un nom de classe appelé" Vector ", son nom planterait avec la classe Vector de JDK. Cependant, cela ne se produit parce que JDK utilise Java.util comme nom de package pour la classe Vector (Java.util.Vector). Ainsi, notre classe Vector peut être nommée "Vector" ou nous pouvons la placer dans un autre package comme com.mycompany.Vector sans combattre avec n'importe qui. Les avantages de l'utilisation du package reflètent la facilité de maintenance, d'organisation et de collaboration accrue entre les développeurs. La compréhension du concept de package nous aidera également à gérer et à utiliser les fichiers stockés dans des fichiers jar de manière plus efficace. "

consultez http://www.jarticles.com/package/package_eng.html pour plus d'informations sur les packages

10
user2729857

créer un package comme 'src.com.util'

Cela ressemble à une erreur. Le nom du package doit être "com.util" et "src" est le nom du dossier source.

À part cela, je ne vois pas quelle est la différence entre vos deux choix. Le résultat est le même, non? Juste différentes étapes dans l'interface graphique pour y arriver. L'assistant pour créer un nouveau package dans Eclipse est simplement un wrapper autour de la création de la hiérarchie de dossiers appropriée dans un dossier source.

Vous n'avez pas du tout besoin de créer des packages vides, vous pouvez créer directement des classes (le package sera créé automatiquement s'il n'existe pas déjà).

3
Thilo

Un package est automatiquement "dossier source" où le dossier n'est qu'un dossier normal. Lorsque vous compilez un projet Eclipse, tous les fichiers des dossiers source sont compilés mais pas dans les dossiers normaux (sauf si ces dossiers normaux a)

1
teamaster