Cela doit être possible mais je ne peux tout simplement pas le comprendre dans Eclipse. J'ai et j'aimerais sélectionner la classe B et extraire dans son propre fichier afin que je reçois: p> et < / p> Comment puis-je faire cela dans Eclipse? p> p>
5 Réponses :
S'il n'y a pas de fonction spécifique, créez la nouvelle classe, copiez et collez le contenu de B, puis frappez Ctrl kbd> - shift kbd> - o kbd > sur les deux fichiers (ou au moins A.Java) pour nettoyer les importations devrait le faire. P>
Ce n'est pas une chose très commune à demander, et il est assez facile de faire manuellement. P>
J'ai essayé de déplacer la classe B de A mais que cela n'a jamais travaillé, alors je l'ai laissé sortir de ma solution.
Il n'y a pas de fonctionnalité que je connaisse. Vous devrez créer un fichier de choix Java et coller la classe dans le nouveau fichier. Corrigez les noms de déclaration des importations et des packages (si besoin d'être). P>
EDIT STRUT> La meilleure façon de le faire: Créez simplement un fichier fort> blank strud> J'ai testé et ça marche. Vous devrez peut-être gérer les importations si nécessaire. P> b.java code>, revenez à
a.java code>, mettez en surbrillance
b.java code> et clic droit et sélectionnez
refacteur -> Déplacer code> (
alt + shift + v code> pour bref). Il déplacera la classe B à B.Java. P>
Ca c'est drôle. Même si c'est assez simple à faire, vous penseriez qu'il y avait un raccourci pour cela. Semble être une opération commune.
est i> une opération commune. Par conséquent, l'idée le soutient depuis des âges.
Dans mon éclipse (3.6 - Helios SR1), je souligne le nom de type ( Edit: il a été appelé «Type de membre Convertir au niveau supérieur» dans Verions antérieures, mais a été mis à jour pour fonctionner avec plus de deux types de membres: P>
http: // Télécharger. eclipse.org/eclipse/downloads/drop/r-3.6-201006080911/eclipse-news-part2.html p>
Type de déplacement vers un nouveau refactoring de fichier. strong> p>
Le type d'élément convert au niveau supérieur
Le refactoring a été renommé pour bouger
Tapez au nouveau fichier et permet maintenant de
type secondaire dans un fichier à déplacer
dans son propre fichier. L'action
continue de travailler pour les types de membres. P>
blockQuote> B code>), puis cliquez avec le bouton droit de la souris sur le menu contextuel, puis sélectionnez
Refacteur Code >>
Type de déplacement vers un nouveau fichier ... code>. p>
Hmm, je me demande quel plugin fournit cela. Je n'ai pas cette option dans mon stock d'installation.
C'est drôle - je n'ai pas cette option. Quelle version de Eclipse avez-vous?
Il est appelé qu'en 3.6, il a eu un nom différent auparavant.
Suivi: semble être une nouvelle fonctionnalité d'Eclipse 3.6: télécharger.eclipse.org/eclipse/downloads/drop/r-3.6-201006080 911 / ...
@ZTYX, AH Oui, et il n'est pas seulement renommé de "Type de membre Déplacer le type de haut niveau ..." car dans votre cas, ce n'est pas un type de membre que vous essayez de bouger. C'est vraiment une nouvelle fonctionnalité.
Voici comment vous le faites (fonctionne dans Eclipse 3.5):
Sélectionnez votre code à extraire: P>
/** ClassB.java */ class B { ... }
couper p> li>
Cliquez avec le bouton droit de la souris sur le package dans lequel vous souhaitez le mettre P> LI>
Sélectionnez Coller. (Alors organiser les importations em> si nécessaire.) P> li> ol> p>
J'aime ça, il évite de devoir créer le fichier. Parce que Eclipse est si incompatible sur le moment où les importations sont correctement copiées. Si vous collez manuellement dans le fichier, toutes les importations suivront. Ici, ils ne sont pas copiés.
J'ai suggéré l'option Cut-Coller, mais je ne connaissais pas les étapes 3 et 4. Merci pour ça ....
Étrange qu'il n'a pas de commande rapide pour cela, comme Alt-Shift-M pour des méthodes. Mais bon, apprenez quelque chose de nouveau chaque jour. Merci!
Positionnez le caret quelque part dans la classe B (peut-être qu'il doit être à l'intérieur du nom de la classe). Sélectionnez (c'est le nom d'action dans Eclipse 3.6. Je crois que dans les versions antérieures, c'était Refactor -> Déplacer le type au nouveau fichier code>. P>
Déplacer le type de membre au niveau supérieur CODE>) P>