1 / 51

Didier Parigot

LES SEANCES DE TRAVAUX PRATIQUES La Plate forme Le Développement JSE-Eclipse Plugin de base :OGSi/SmartTools Fabrique Logicielle : basé sur SmartTools. Didier Parigot. Support de TP en PDF/Site Téléchargement. Supports jacques.bapst.home.hefr.ch/pr1/doc/eclipse3.5_premiers_pas.pdf

khan
Download Presentation

Didier Parigot

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. LES SEANCES DE TRAVAUX PRATIQUESLa Plate formeLe Développement JSE-EclipsePlugin de base :OGSi/SmartToolsFabrique Logicielle : basé sur SmartTools Didier Parigot

  2. Support de TP en PDF/Site Téléchargement Supports • jacques.bapst.home.hefr.ch/pr1/doc/eclipse3.5_premiers_pas.pdf • jacques.bapst.home.hefr.ch/links/index.htm#IDE • Développement en java avec eclipse, jean michel Doudoux Obtenir JRE ou JDK • http://Java.sun.com---- choisir la version que l’on désire • java.sun.com/javase/downloads/ ---- pour Java Standard Edition • http://www.oracle.com/technetwork/java/index.html Obtenir Eclipse • http://www.eclipse.org/downloads/index.php Les plug-ins • http://marketplace.eclipse.org/ • http://eclipse−plugins.2y.net/eclipse/index.jsp

  3. Les Travaux Pratiques : SOMMAIRE • TP N°1 :Prise en Main • Eclipse Identité, Gestion des versions, Pourquoi Eclipse, Installation, Démarrage concepts clés, Architecture, Paramétrage Eclipse, Les Plug-ins, SmartTools dans Eclipse, mise en place, navigation. • Importation de Chat & Compilation • Demos chat et Géolist • TP N°2 :Création des composants • Création de deux composants • TP N°3 :Exécution en environnement distribué • Application en P2P

  4. TP1:Prise en Main Commencer avec Eclipse

  5. TP1:Eclipse : Identité • IDE écrit en JAVA • Auteur : IBM • Open Source • Eclipse est au cœur de WSW (Websphere Studio Workbench) • Extensible grâce à son concept de module appelé couramment Plug-ins • Le noyau de la plate-forme est nommé Runtime. • Eclipse = Runtime + plug-ins • Supporte plusieurs plate-forme d'exécution (Windows, Linux, MacOS, ...) • Exécution rapide • Langage de développement : Java,C, C++, COBOL, Python, Perl, PHP and Ruby

  6. TP1:Eclipse: Gestion des versions • Chaque version est constituée d'un nombre plus ou moins important de type nommé "Build« ,on a : • La "NihtlyBuilds" : Version en cours de développement • La "IntegrationBuilds" assemblage de projets pour la réalisation de tests • La "Stable Builds" : Version testée • La "Release" : version diffusée et "fiable" • Les Versions d’Eclipse -La toute première release est la 1.0 en Novembre 2001 -De 2004-2010 • 2004 : 3.0 (Eclipse 3.0) • 2005 : 3.1 (Eclipse 3.1) • 2006 : 3.2 (Callitos) • 2007 : 3.3 (Europa) • 2008 : 3.4 (Ganymede) • 2009 : 3.5 (Galileo) • 2010 : 3.6 (Helios) En 2011 (Indigo)

  7. Eclipse : Avantages • Naturellement modulaire, conséquences : • Eclipse peut être utilisé par n’importe quel développement • On peut développer des fonctionnalités qui ne sont pas fournies en standard et les greffés à Eclipse (Concept des plug-ins)

  8. TP1:Eclipse : Installation • Pré-requis 1.Télécharger Java (voir Voirhttp://Java.sun.com) Le fichier qui nous concerne se nomme : - dans le cas de Windows : jdk-6u14-windows-i586.exe (73,5 Mo) - dans le cas de Linux : jdk-6u14-linux-i586.bin (77 Mo) 2. Installer Java Il s'agit dans les deux cas d'un installateur auto-extractible : après le téléchargement il suffit de le lancer et de suivre les instructions qui s'affichent. 3. Vérifier que l’installation est correct : Sous Windows via la console de commande, taper : java –version • Procédures : Installation très facile : Il suffit de décompresser l'archive d'Eclipse dans un dossier. 1. Télécharger Eclipse : http://www.eclipse.org/downloads/index.php 2. Décompresser le fichier obtenu dans le répertoire eclipsede votre disque dur (Par exemple c:\eclipse)--------NB : la désinstallation s’est la suppression de ce répertoire 3. Lancer eclipse.exe qui se trouve dans le répertoire eclipse.

  9. TP1:Eclipse : démarrage (1) Lorsque vous lancer eclipse vous obtenez l’écran ci-dessous • Commentaires : WorkSpace signifie espace de travail. C’est un répertoire dans lequel sont regroupés les projets de développement que vous créés. Cette écran vous invite : Soit à accepter le répertoire de travail qu’il affiche par défaut, soit à dérouler le combo pour choisir un répertoire de travail si vous n’êtes pas à votre premier démarrage d’éclipse, soit d’en créer un (en cliquant sur Browse.. , puis choix de l’emplacement et click du bouton « nouveau dossier »)

  10. TP1:Eclipse : démarrage (2) NB : Pour des Questions d’ordre pratique • C’est bon de se fabriquer un emplacement idéal qui regroupe les projets JAVA (emplacement des données), ainsi, il faut se créer un Workspace différent de celui proposé par défaut par Eclipse qui est généralement de la forme c:\documents and settings\UserName\WorkSpace . 2. Pour simplifier le lancement d’Eclipse, il faut créer un raccourci d’éclipse sur le bureau. Il ne s’agit pas de copier le fichier exécutable sur le bureau. 3. Exemple Le workspace nommé « workspace1 » contient « .metadata » et projet test Le Workspace Le Workspacecontient des projets, un dossier de méta-données

  11. TP1:Eclipse : concepts clés Les vues Plan de Travail ou Workbench • Editeur (ici) Perspective

  12. TP1:Eclipse : concepts clés • Workbench: C’est le bureau, c’est l’interface qui s’ouvre dès qu’on lance Eclipse. Il fournit les éléments de l’ergonomie au travers des vues , des perspectives, et des éditeurs. • Perspectives : c’est une organisation des vues qui permet de travailler sur un thème donné. On a par exemple la perspective Ressource qui permet de voir tout ce que contient le workspace, la perspective Java pour développer en Java, la perspective CVS pour gérer ses repositories,… Ces perspectives sont accessibles via la petite barre d'outils qui se trouve en haut à droite (par défaut) • Vue :C’est une fenêtre de travail; navigation, édition java, package, projet, … • Editeur : il permet de visualiser mais aussi de modifier le contenu d'un élément. Un éditeur peut contenir plusieurs éléments, chacun étant identifié par un onglet.

  13. Plate-forme Eclipse : Architecture Plug-ins SWT Eclipse= Runtime + Plug-ins SWT est une bibliothèque qui sert à construire des interfaces graphiques en Java, au même titre que les bibliothèques AWT et Swing. JFace est une surcouche de SWT, d’avantage orientée objet, qui amène de plus un modèle MVC et des fonctionnalités supplémentaires. Ant est l’outil d’automatisation de tâche répétitive tout au long du cycle de vie de l’application. CVS est un outil de développement collaboratif.

  14. TP1:Prise en Main Les plugins

  15. TP1:Eclipse : Installation Plug-in Un plug-in est un module d’extension. C’est une brique logiciel qui vient compléter un logiciel hôte pour lui apporter de nouvelles fonctionnalités. Les Plugins sont généralement distribués sous forme de fichiers ZIP qui peuvent contenir plusieurs fichiers mais où l'on trouve pratiquement toujours un ou plusieurs fichiers JAR ainsi qu'un fichier XML important nommé plugin.xml qui décrit le composant et qui sera interprété par Eclipse lors de son lancement. Comment installer un plug-ins dans Eclipse ? • Certains Plugins disposent d'une URL permettant de les installer directement à l'aide du gestionnaire de mise à jour (Update Manager) d'Eclipse. Danscecas faire : Help >Software Install New Software... Ajouterl’urldans le champ word with, et cliquersur “Add…” , sélectionner le composant à installer et cliquersur “Next” • Les Plugins ne disposent pas d'un environnement adapté au gestionnaire de mise à jour . Il suffit généralement de décomprimer le fichier ZIP dans le sous répertoire \plugins\ qui se trouve en dessous du répertoire \eclipse\ à l'endroit où l'on a installé le logiciel Eclipse. Le Plugin sera automatiquement chargé et activé lors du prochain démarrage d'Eclipse. NB : Attention à bien conserver l'arborescence des fichiers lors de la décompression.

  16. TP1:Eclipse : La fabrique logicielle SmartTools (1) Installation de SmartTools Prérequis : On doit connaitre où se trouve le featuresmartTool. Dans notre cas il se trouve dans la clé USB (CleUSB) qui est un dossier de notre disque ou un dossier partager de notre intranet. On suppose qu’éclipse est lancé Action 1: Help > Install Software ---On obtient l’écran nommé (1) 1 Action 2 : Cliquer sur le bouton « Add.. » Vous obtenez l’écran nommé (2) 2 Action 3 : cliquez sur le bouton « archive… » pour sélectionner allez cherchez le feature dans « CleUSB » ---Voir suite

  17. TP1:Eclipse : La fabrique logicielle SmartTools (2) Action 4 : Sélectionnez le zip SmartTool (la version 1.6.2) et cliquez sur « ouvrir ». (4) Action 5: Saisir un nom significatif(SmartTools) et cliquez sur « OK ». (5) 5 4 Note Important : Ceci ne permet que d’ajouter ce chemin dans la liste des sites préférés . Pour continuer cliquez sur le lien « Available software Sites » de l’écran available software pour selectionner le chemin du feature.

  18. TP1:Eclipse : La fabrique logicielle SmartTools (3) Action 6: Dérouler «Uncategorized» voir (6) puis cohez la feature «SmartTools» puis cliquez sur « Next » Aperçu 6 La suite c’est le lancement effectif de l’installation (voir slide suivant)

  19. TP1:Eclipse : La fabrique logicielle SmartTools (4) Accepter les termes de la licence Cliquez sur ce bouton pour terminer

  20. TP1:Eclipse : La fabrique logicielle SmartTools (5) La barre d’outil d’eclipse a bel et bien changé. On peut voir la présence de l’icône SmartTools. On a bel et bien les plug-ins SmartTool dans la vue des plug-ins. Il y a dans cette vue bien d’autres plug-ins.

  21. TP1:Eclipse -Lancer Eclipse via la console Nous allons lancer eclipse via la console. Pour cela, il suffit d’aller dans les accessoires de Windows puis de cliquer sur l’invite du dos. Une fois la session dos lancée, accéder au répertoire eclipse puis taper la commande : eclipse.exe –console  (Voir l’Ecran ci-dessous). Le slide suivant vous donne le résultat obtenu.

  22. TP1:Eclipse -Lancer Eclipse via la console Observations: Nous observons que c’est OSGi qui exécute Eclipse. Cliquons sur l’écran console pour l’amener en premier plan et lui passer quelques commandes. Essayons les commandes : ss (qui nous donne les bundles actifs), Help (pour l’aide), etc. Note : Un bundle est un composant au sens OSGi

  23. TP1:Eclipse : préparation environnement Action 1 : Windows > Preferences Ecran des préférences à paramétrer NB : Les options configurables sont très nombreuses et il est toujours possible, par domaine, de revenir à la configuration par défaut grâce au bouton « Restore Defaults ». Nous allons nous intéresser beaucoup plus à la configuration liée à cette formation.

  24. TP1:Eclipse : préparation environnement (1) Ecran des préférences à paramétrer Paramétrages à Effectuer

  25. TP1:Eclipse : préparation environnement (2) Nous allons commencer par l’importation des Fichiers CleanUp.xml et formatter.xml Action 1 : Faire Windows > Preferences Action 2 : Choisir Java > code style (voir les options clean et formatter) 1 Cliquez sur le bouton « import » pour importer le fichier CleanUp (1). 2 Vous obtenez l’écran (2), qui vous donne la possibilité d’aller chercher le fichier cleanUp.xml qui se trouve dans le répertoire « Feature » du dossier « logiciels » de notre « CleUSB » La même procédure est utilisée pour importer le fichier « Formatter ».

  26. TP1:Eclipse : préparation environnement (3) Les paramétrages généraux se feront ainsi qu’il suit : On doit permettre l’affichage des numéros de ligne dans l’éditeur On doit paramétrer cet option « spelling à disable » c’est-à-dire décocher « Enable ». On doit cocher l’option « Build Automatique » et ensuite on doit choisir l’encodage « UTF- 8 »

  27. TP1:Eclipse - préparation environnement (4) NB : Questions pratiques C’est beau de se préparer un environnement de travail, mais ce n’est pas gaie de reprendre lorsqu’on en a besoin sur un autre poste de travail. Pour éviter cette reprise, on doit sauvegarder son environnement de travail ou plutôt on doit l’exporter. Le fichier obtenu est un «.epf » • Exporter les préférences Fichier > Export > General > Preferences (Export all) • Importer les préférences Fichier > Import > General > Preferences (Import all) 2 1 4 3

  28. TP1:Eclipse -préparation environnement (5) • Autres configurations standards

  29. TP1:Eclipse -Importation des sources sous eclipses Dans ce volet nous allons importer les sources qui existent dans CleUSB dans l’environnement Eclipse. Action 1 : Fichier > import ---> on obtient l’écran (1) Action2 : Dérouler l’option «General» puis sélectionner «ExistingProjectsintoWorkspace » puis cliquez sur le bouton « suivant » 1 • Action 3 : Dans l’écran que vous obtenez sélectionnez le bouton Brower pour rechercher le fichier à importer. Les sources à importer sont dans : « …\CleUSB\source\workSapce ». Voir l’écran d’import suivant pour comprendre la suite.

  30. TP1:Eclipse Importation des sources sous eclipses Cette Zone contient l’ensemble des projets présents dans le dossier à importer. Conséquence on doit tout désélectionner et ne cocher que ce qu’on veut importer. Action 4 : Cliquez sur le bouton « Finish » pour terminer l’importation Nous importons dans le cas présent « chat », et « GWT ». Les éléments à prendre sont : -gwt -inria.smartTools.chat.gwt -inria.smartTools.chat.starter -inria.smartTools.chat.swing Le résultat Attendu Voir la suite

  31. TP1:Eclipse :Présentation d’une source Importée B Compilation GWT Sources générée Lancement de la Compilation du code importé. A Résultats de la compilation voir bas de l’écran doit être SUCCESSFUL -Je déplace « buildST.xml » dans la vue « Ant » pour la compilation. • Une fois buildST.xml dans la vue Ant, Pointer le projet et appuyer sur F5 pour le rafraichissement. Puis lancer la compilation par (B) • Pour Obtenir la perspective Ant faire : Windows > Show view > Ant A

  32. TP1:Eclipse –Démonstation Cas Chat L’exécutable de chat se trouve dans /CleUSB/TP1/ Action 1 : Ouvrez un terminal et lancez le script WinRunChat1.bat et WinRunChat2.bat . Ces Deux invites Dos s'ouvrent et exécutent deux plateformes LogNet et PON en parallèle. Chacun de ces plateformes ont lancé un composant permettant de démarrer des composants chat.

  33. Démonstation : Cas Chat Démarre chat1 Démarre chat2 Console OSGi

  34. Démonstation : Cas Chat Suivre les instructions ci-dessous pour l’exécution de chat. Pour obtenir ces instructions voir : /CleUSB/TP1/Chat1.1/Chat/Index.html Démarrer Chat1 : Démarrer Chat2 :

  35. TRAVAUX PRATIQUE 2: Création des composants -Enoncé • Création des composants • Exécution des composants Créés -Sous une même JVM

  36. TP2: Création des composants -Enoncé Le présent TP, consiste : • A créer deux composants nommés « expediteur » et « recepteur ». « expediteur» Possède le service « message », il est chargé au travers une interface swing de saisie /Envoie, d’envoyer les messages au « recepteur », qui lui à travers une interface swing d’affichage, reçois et édite le message envoyé par l’expéditeur. Précisions -L’interface d’envoie est constitué d’une zone de Saisie et d’un bouton d’envoie (send ou envoyer) 2. Une fois les deux composants créé, nous devons les exécuter : A) D’abord sur la même JVM B) Ensuite sur les JVM différents

  37. TP2: Création des composants (1) Etape 1 : Créer les composants « expediteur » et « recepteur » File > New >Other • Sélectionner « New SmartTools Component » puis cliquer sur « Next » (voir 1). • Saisir le nom du composant et cliquer sur « Finish » (Voir 2) 1 2

  38. TP 2: Création des composants (2) 3 Nous avons, les deux composants créés « expediteur » et « recepteur » Les deux composants créés, nous allons les compiler et les doter des services et métiers

  39. TP 2 : Création des composants (3) 1. Préparation du composant « expediteur » Action1 : Aller dans les sources de « expediteur » et mettre à jour la classe « Activator » Changer : « ComponentContainer » en « ExpediteurContainer » Remplacer : « Component » par « Expediteur » Action 2 : Aller dans les sources de « expediteur.cdml » et mettre à jour expediteur.cdml, et implémenter le service « message »

  40. TP 2 : Création des composants (3-2) 1. Préparation du composant « expediteur » Action 2 : Aller dans les sources de « expediteur.cdml » et mettre à jour expediteur.cdml, et implémenter le service « message » <output name="message" method="message“ doc="update Label"> <attributename="message" doc="" javatype="java.lang.String" /> </output> Nous implémentons le service d’expédition, il s’agit de l’envoie donc output

  41. TP 2 : Création des composants (4) 1. Préparation du composant « expediteur » Action 3 : implémentation du métier de l’expéditeur Nous allons implémenter l’interface Swing d’envoie de Message. L’interface à droite présente le code métier de l’expéditeur. Copier le contenu du fichier « /USB/TP2/expediteur.text » et remplacer celui que vous avez en présence. Mise à jour Activator Faites la même chose pour le fichier « Activator » : copier le contenu du fichier « /USB/TP2/Activator_E.txt » pour mettre à jour le fichier que vous avez. NB : Voir le contenu de la façade «Expediteurfacade.java» de generateur/src. La facade implémente message et hérite de expediteur donc message doit être déclaré abstraite dans expediteur .

  42. TP 2 : Création des composants (3) 1. Préparation du composant « recepteur » Action1 : Aller dans les sources de « recepteur » et mettre à jour la classe « Activator » Changer : « ComponentContainer » en « RecepteurContainer » Remplacer : « Component » par « Recepteur » Action 2 : Aller dans les sources de « Recepteur.cdml » et mettre à jour Recepteur.cdml, et implémenter le service « message »

  43. TP 2 : Création des composants (3-2) 1. Préparation du composant « expediteur » Action 2 : Aller dans les sources de « expediteur.cdml » et mettre à jour expediteur.cdml, et implémenter le service « message » Nous implémentons le service de reception, il s’agit de la reception donc input

  44. TP 2 : Création des composants (4) 1. Préparation du composant « recepteur » Action 3 : implémentation du métier de recepteur Nous allons implémenter l’interface Swing reception de Message. L’interface à droite présente le code métier de recepteur. Copier le contenu du fichier « USB/TP2/recepteur.text » et remplacer celui que vous avez en présence. Mise à jour Activator Faites la même chose pour le fichier « Activator » : copier le contenu du fichier « USB/TP2/Activator_R.txt » pour mettre à jour le fichier que vous avez. NB : Voir le contenu de la façade «Expediteurfacade.java» de generateur/src. La facade implémente message et hérite de Recepteur donc message doit être déclaré abstraite dans Recepteur.

  45. TP 2 : Exécution des composants L’exécution ne se fait pas au hasard, elle se prépare. Le principe général c’est la création d’une configuration OSGi. Cette configuration est paramétrée. Au cours du paramétrage, il faut cocher les plugins (Bundles) nécessaires à l’exécution de l’application. On peut les classer ses bundles d’exécution en deux catégories : • Les bundles liés à la plate forme, se sont par exemple dans notre cas -ComponentsManager -inria.smarttools.core -inria.smarttools.ds.local -inria.smarttools.lib -org.eclipse.osgi 2. Les bundles liés à notre espace de travail c’est-à-dire ceux de l’application en cours -expéditeur -Recepteur Plus le bundle de démarrage : inria.starter

  46. TP 2 : Exécution des composants 1. Accès à l’écran de configuration 2. Création d’une nouvelle configuration 3. Renommage de la configuration créée 1 2 3

  47. TP 2 : Exécution des composants On coche et on modifie les levels ici. Le paramétrage terminé, il faut cliquez sur Run pour lancer l’exécution.

  48. TP 2 : Exécution des composants/ Résultats Expéditeur Récepteur Exercice de recherche Modifier le présent projet de manière à produire un modèle où l’envoie et la réception se font dans les deux sens.

  49. TP 3 : Création et exécution des composants (suite) Exécution en environnement distribué -Application au P2P-

  50. TP 3 : Création et exécution des composants (suite) Enoncé : démarrage sur une JVM 1. Créez un modèle bidirectionnel de « expediteur » , « recepteur ». 2. Créer un modèle d’envoi-réception nommé chat conforme à l’interface ci-dessous Se connecter à une instance Zone de saisie de l’ID d’une instance à contacter Zone d’affichage des messages Zone de saisie des messages 3. Vous avez chat.starter, -importer le sous eclipse, compiler et exécuter chat sous Eclipse

More Related