Comment renommer les paquets dans le nouvel IDE Android Studio, basé sur IntelliJ IDEA ?
Y a-t-il un refactoring automatique inclus ?
Je veux faire du refactoring en masse, mais je ne sais pas comment. J'ai travaillé deux ans avec Eclipse et dans Eclipse c'est une opération en un clic.
Une autre bonne méthode est la suivante : créez d'abord un nouveau paquet avec le nom souhaité en faisant un clic droit sur le dossier Java → Nouveau → Package.
Ensuite, sélectionnez et faites glisser toutes vos classes vers le nouveau package. Android Studio refactorisera le nom du package partout.
Enfin, supprimez l'ancien package.
C'est fait.
Très important:
Vous devez changer manuellement le fichier AndroidManifest.xml et build.gradle pour le nouveau paquet si vous utilisez cette méthode.
Cliquez avec le bouton droit de la souris sur le paquet dans le Panneau des projets.
Choisissez Refactor -> Rename dans le menu contextuel.
Si le nom de votre paquet est séparé par plus de deux points, par exemple com.hello.world
et que, de plus, vous n'avez rien mis dans com/
et com/hello/
. Toutes vos classes sont placées dans com/hello/world/
, vous pouvez suivre les étapes suivantes pour remanier le nom de votre ou vos paquets dans Android Studio ou IntelliJ :
com/
, com/hello/
). Vous pouvez
réaliser cela en ajoutant d'abord deux fichiers au paquet com.hello.world, disonscom.hello.world.PackageInfo1.java com.hello.world.PackageInfo2.java
puis remaniez-les en les déplaçant respectivement vers com et com.hello.
Vous verrez que com et com.hello se trouvent dans le Projet (Alt+1
ou Command+1
pour le raccourci) et renommer les répertoires, le refactoring est
attend là comme vous le pensiez.
Refactor pour renommer un ou plusieurs de ces répertoires pour atteindre votre objectif. La seule chose que vous devez noter ici est que vous devez choisir les répertoires plutôt que les paquets quand un dialogue vous le demande.
Si vous avez beaucoup de classes dans votre projet, cela vous prendra un certain temps d'attendre son auto-scanning-and-rename.
En outre, vous devez renommer le nom du paquet dans le AndroidManifest.xml manuellement, je suppose, de sorte que les autres noms dans ce fichier peuvent bénéficier du préfixe.
[AUSSI], il se peut que vous deviez remplacer tous les com.hello.world.R
par le nouveau XXX.XXX.XXX.R
(Command+Shift+R
en abrégé)
Reconstruisez et exécutez votre projet pour voir si cela fonctionne. Et utilisez "Find in Path" pour trouver d'autres noms non-touch que vous voudriez renommer.
Profitez-en.