Outils de développement AEM pour Eclipse aem-developer-tools-for-eclipse
Vue d’ensemble overview
Les outils de développement Experience Manager pour Eclipse sont un plug-in Eclipse basé sur le plug-in Eclipse pour Apache Sling disponible avec Apache License 2.
Il offre plusieurs fonctionnalités qui facilitent le développement d’AEM :
- Intégration transparente avec les instances AEM via Eclipse Server Connector
- Synchronisation pour les bundles de contenu et d’OSGi
- Prise en charge du débogage avec fonctionnalité de remplacement de code à chaud
- Démarrage simple de projets AEM par l’intermédiaire d’un assistant de création de projet spécifique
- Modification facile des propriétés JCR
Conditions requises requirements
Avant d’utiliser AEM Developer Tools, vous devez :
- Téléchargez et installez l’IDE Eclipse pour les développeurs Enterprise Java™.
- Configurez l’installation d’Eclipse pour vous assurer de disposer d’au moins 1 Go de mémoire de segment en modifiant votre fichier de configuration
eclipse.ini
de la manière décrite dans les questions fréquentes Eclipse.
eclipse.ini
.Comment installer AEM Developer Tools pour Eclipse how-to-install-the-aem-developer-tools-for-eclipse
Une fois les conditions préalables ci-dessus réunies, vous pouvez installer le plug-in comme suit :
-
Ouvrez le site Web des outils de développement AEM.
-
Copiez le lien d’installation.
Notez que vous pouvez également télécharger une archive au lieu d’utiliser le lien d’installation. Cela permet une installation hors ligne, mais sans recevoir les notifications de mise à jour automatique.
-
Dans Eclipse, ouvrez le menu Aide.
-
Cliquez sur Installer un nouveau logiciel.
-
Cliquez sur Add… (Ajouter).
-
Dans le champ Nom, saisissez
AEM Developer Tools
. -
Dans le champ Emplacement, copiez l’URL d’installation.
-
Cliquez sur Add (Ajouter).
-
Cochez les plug-ins AEM et Sling.
-
Cliquez sur Next (Suivant).
-
Dans la fenêtre Install Details (Détails de l’installation), cliquez de nouveau sur Next (Suivant).
-
Acceptez les contrats de licence et cliquez sur Finish (Terminer).
-
Cliquez sur Redémarrer maintenant pour redémarrer Eclipse.
La perspective d’AEM the-aem-perspective
Dans Eclipse, une perspective détermine les actions et les vues disponibles dans une fenêtre et permet une interaction axée sur les tâches avec les ressources. Pour plus d’informations sur les perspectives, consultez la documentation d’Eclipse.
Les outils de développement Experience Manager pour Eclipse offrent une perspective AEM qui vous permet de contrôler intégralement vos projets et instances AEM. Pour ouvrir la perspective AEM :
- Dans la barre de menus Eclipse, sélectionnez Window > Perspective > Open Perspective > Other.
- Sélectionnez AEM dans la boîte de dialogue et cliquez sur Ouvrir.
Exemple de projet multi-module sample-multi-module-project
Les outils de développement Experience Manager pour Eclipse s’accompagnent d’un exemple de projet multi-module qui vous permet de vous familiariser rapidement avec la configuration d’un projet dans Eclipse. Ils servent également de guide des bonnes pratiques pour plusieurs fonctionnalités AEM. En savoir plus sur l’archétype du projet.
Pour créer l’exemple de projet, procédez comme suit :
-
Dans le menu Fichier > Nouveau > Projet, accédez à la section AEM et sélectionnez Exemple de projet multi-module AEM.
-
Cliquez sur Next (Suivant).
note note NOTE Cette étape peut prendre un certain temps car m2eclipse doit analyser les catalogues de l’archétype. -
Sélectionnez
com.adobe.granite.archetypes : sample-project-archetype : <highest-number>
dans le menu, puis cliquez sur Next (Suivant). -
Fournissez les champs suivants pour l’exemple de projet :
- Name (Nom)
- Group Id (ID de groupe)
- Artifact Id (ID d’artefact)
- appId : vous devrez peut-être développer les options Advanced (Avancé) pour définir cette valeur.
- appTitle : vous devrez peut-être développer les options Advanced pour définir cette valeur.
- Package : vous devrez peut-être développer les options Advanced pour définir cette valeur.
-
Cliquez sur Next (Suivant).
-
Vous devez ensuite configurer un serveur AEM auquel Eclipse se connectera.
Pour utiliser la fonctionnalité de débogage, vous devez avoir démarré AEM en mode de débogage, ce qui peut être réalisé en ajoutant ce qui suit à la ligne de commande :
code language-text -nofork -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=10123
-
Cliquez sur Finish (Terminer). La structure du projet est créée.
note note NOTE Sur une nouvelle installation (plus précisément, si les dépendances Maven n’ont jamais été téléchargées), vous risquez de créer le projet avec des erreurs. Dans ce cas, suivez la procédure décrite dans la section Résoudre une définition de projet non valide.
Comment importer des projets existants how-to-import-existing-projects
Vous pouvez utiliser la fonction Nouveau projet pour créer la structure qui vous convient :
-
Suivez les instructions afin de créer un exemple de projet multi-module et les projets suivants seront créés pour vous, ce qui permettra de séparer efficacement les préoccupations :
PROJECT.ui.apps
pour le contenu/apps
et/etc
PROJECT.ui.content
pour le/content
qui est crééPROJECT.core
pour les bundles Java™ (ils deviennent intéressants dès que vous voulez ajouter du code Java™)PROJECT.it.launcher
etPROJECT.it.tests
pour les tests d’intégration
-
Remplacez le contenu de votre projet
PROJECT.ui.apps
par les dossiersapps
etetc
de votre package :- Dans le panneau Project Explorer (Explorateur de projets), développez
PROJECT.ui.apps
>src
>main
>content
>jcr_root
>apps
. - Cliquez avec le bouton droit sur le dossier
apps
et choisissez Afficher dans > Explorateur système. - Supprimez les dossiers
apps
etetc
que vous devriez voir maintenant et placez ici les dossiersapps
etetc
de votre package de contenu. - Dans Eclipse, cliquez avec le bouton droit sur le projet
PROJECT.ui.apps
et choisissez Actualiser.
- Dans le panneau Project Explorer (Explorateur de projets), développez
-
Faites ensuite de même pour
PROJECT.ui.content
et remplacez son dossier de contenu par celui de vos packages :- Dans le panneau Project Explorer (Explorateur de projets), développez
PROJECT.ui.content
>src
>main
>content
>jcr_root
>content
. - Cliquez avec le bouton droit sur le dossier de contenu plus profond et choisissez Afficher dans > Explorateur système.
- Supprimez le dossier de contenu que vous devriez voir maintenant et placez ici le dossier de contenu de votre package de contenu.
- Dans Eclipse, cliquez avec le bouton droit sur le projet
PROJECT.ui.content
et choisissez Actualiser.
- Dans le panneau Project Explorer (Explorateur de projets), développez
-
Vous devez maintenant mettre à jour les fichiers
filter.xml
de ces deux projets pour qu’ils correspondent au contenu de votre package de contenu. Pour cela, ouvrez le fichierMETA-INF/vault/filter.xml
de votre package de contenu dans un éditeur de texte/code distinct.- Voici un exemple de l’aspect que peut avoir votre fichier
filter.xml
:
code language-xml <?xml version="1.0" encoding="UTF-8"?> <workspaceFilter version="1.0"> <filter root="/apps/foo"/> <filter root="/apps/foundation/components/bar"/> <filter root="/etc/designs/foo"/> <filter root="/content/foo"/> <filter root="/content/dam/foo"/> <filter root="/content/usergenerated/content/foo"/> </workspaceFilter>
- Voici un exemple de l’aspect que peut avoir votre fichier
-
Concernant le contenu de votre package qui a été divisé en deux projets, vous devrez également diviser ces règles de filtrage en deux et mettre à jour les fichiers
filter.xml
de ces deux projets en conséquence.-
Dans Eclipse, ouvrez
PROJECT.ui.apps/src/main/content/META-INF/filter.xml
. -
Remplacez le contenu de l’élément
<workspaceFilter>
par les règles de votre package qui commencent par/apps
et/etc
.-
Par exemple :
code language-xml <?xml version="1.0" encoding="UTF-8"?> <workspaceFilter version="1.0"> <filter root="/apps/foo"/> <filter root="/apps/foundation/components/bar"/> <filter root="/etc/designs/foo"/> </workspaceFilter>
-
-
Ouvrez ensuite
PROJECT.ui.content/src/main/content/META-INF/filter.xml
. -
Remplacez les règles par celles de votre package qui commencent par
/content
.-
Par exemple :
code language-xml <?xml version="1.0" encoding="UTF-8"?> <workspaceFilter version="1.0"> <filter root="/content/foo"/> <filter root="/content/dam/foo"/> <filter root="/content/usergenerated/content/foo"/> </workspaceFilter>
-
-
-
Veillez à enregistrer toutes vos modifications. Vous pouvez désormais synchroniser ce nouveau contenu avec votre instance AEM.
-
Dans le panneau Servers (Serveurs), assurez-vous que votre connexion est démarrée. Si ce n’est pas le cas, démarrez-la.
-
Cliquez sur l’icône Nettoyer et Publish .
Une fois cette opération terminée, votre package devrait être exécuté sur votre instance. Lors de l’enregistrement, toute modification est automatiquement synchronisée avec l’instance.
Si vous souhaitez recréer un package à partir de votre projet, cliquez avec le bouton droit de la souris sur PROJECT.ui.apps
ou PROJECT.ui.content
et choisissez Exécuter en tant que > Installation Maven.
Vous avez maintenant créé un dossier cible avec votre module à l’intérieur (appelé, par exemple, PROJECT.ui.apps-0.0.1-SNAPSHOT.zip
).
Résolution des problèmes troubleshooting
Résolution d’une définition de projet non valide resolving-invalid-project-definition
Pour résoudre des dépendances et une définition de projet non valides, procédez comme suit :
- Sélectionnez tous les projets créés.
- Faites un clic-droit.
- Dans le menu contextuel, sélectionnez Maven > Mettre à jour les projets.
- Cochez Force Updates of Snapshot/Releases (Forcer les mises à jour d’instantané/de versions).
- Cliquez sur OK.
Eclipse télécharge les dépendances requises. Cela peut prendre un moment.
Informations supplémentaires more-information
Le site Web officiel Apache Sling IDE tooling for Eclipse fournit des informations utiles :
- Le guide d’utilisation Apache Sling IDE tooling for Eclipse vous guide parmi les concepts généraux, l’intégration des serveurs et les fonctionnalités de déploiement pris en charge par AEM Development Tools.
- La section Dépannage.
- La liste des problèmes connus.
La documentation officielle Eclipse suivante peut vous aider à configurer votre environnement :