La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Octobre 2010 LES SEANCES DE TRAVAUX PRATIQUES La Plate forme Le Développement JSE-Eclipse Plugin de base :OGSi/SmartTools Fabrique.

Présentations similaires


Présentation au sujet: "Octobre 2010 LES SEANCES DE TRAVAUX PRATIQUES La Plate forme Le Développement JSE-Eclipse Plugin de base :OGSi/SmartTools Fabrique."— Transcription de la présentation:

1 Octobre 2010 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

2 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  choisir la version que l’on désire  java.sun.com/javase/downloads/ ---- pour Java Standard Edition  Obtenir Eclipse  Les plug-ins  

3 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 4 TP1:Prise en Main Commencer avec Eclipse

5 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 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 "Nihtly Builds" : Version en cours de développement La "Nihtly Builds" : Version en cours de développement La "Integration Builds" assemblage de projets pour la réalisation de tests La "Integration Builds" assemblage de projets pour la réalisation de tests La "Stable Builds" : Version testée La "Stable Builds" : Version testée La "Release" : version diffusée et "fiable" La "Release" : version diffusée et "fiable"  Les Versions d’Eclipse -La toute première release est la 1.0 en Novembre La toute première release est la 1.0 en Novembre De De : 3.0 (Eclipse 3.0) 2004 : 3.0 (Eclipse 3.0) 2005 : 3.1 (Eclipse 3.1) 2005 : 3.1 (Eclipse 3.1) 2006 : 3.2 (Callitos) 2006 : 3.2 (Callitos) 2007 : 3.3 (Europa) 2007 : 3.3 (Europa) 2008 : 3.4 (Ganymede) 2008 : 3.4 (Ganymede) 2009 : 3.5 (Galileo) 2009 : 3.5 (Galileo) 2010 : 3.6 (Helios) 2010 : 3.6 (Helios) En 2011 (Indigo)En 2011 (Indigo)

7 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 8 TP1:Eclipse : Installation  Procédures : Installation très facile : Il suffit de décompresser l'archive d'Eclipse dans un dossier. 1. Télécharger Eclipse : 2. Décompresser le fichier obtenu dans le répertoire eclipse de 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.  Pré-requis 1.Télécharger Java (voir 1.Télécharger Java (voir Voir 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

9 9 TP1:Eclipse : démarrage (1) Lorsque vous lancer eclipse vous obtenez l’écran ci-dessous Lorsque vous lancer eclipse vous obtenez l’écran ci-dessous Commentaires :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 10 TP1:Eclipse : démarrage (2) NB : Pour des Questions d’ordre pratique 1.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. Le Workspace Le Workspace contient des projets, un dossier de méta- données 3. Exemple Le workspace nommé « workspace1 » contient «.metadata » et projet test

11 11 TP1:Eclipse : concepts clés Les vuesLes vues PerspectivePerspective Plan de Travail ou Workbench EditeurEditeur (ici)

12 12 TP1:Eclipse : concepts clés  Workbench :  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 :  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 :  Vue : C’est une fenêtre de travail; navigation, édition java, package, projet, …  Editeur :  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 13 Plate-forme Eclipse : Architecture Plug-ins Eclipse= Runtime + Plug-ins SWT SWT est une bibliothèque qui sert à construire des interfaces graphiques en Java, au même titre que les bibliothèques AWT et Swing.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.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.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.CVS est un outil de développement collaboratif.

14 14 TP1:Prise en Main Les plugins

15 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 ? 1.Certains Plugins disposent d'une URL permettant de les installer directement à l'aide du gestionnaire de mise à jour (Update Manager) d'Eclipse. Dans ce cas faire : Help >Software Install New Software... Ajouter l’url dans le champ word with, et cliquer sur “Add…”, sélectionner le composant à installer et cliquer sur “Next” 2.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. 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 16 TP1:Eclipse : La fabrique logicielle SmartTools (1) Installation de SmartToolsInstallation de SmartTools Prérequis : On doit connaitre où se trouve le feature smartTool. 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) Action 2 : Cliquer sur le bouton « Add.. » Vous obtenez l’écran nommé (2) 1 2 Action 3 : cliquez sur le bouton « archive… » pour sélectionner allez cherchez le feature dans « CleUSB » ---Voir suite

17 17 Action 4 : Sélectionnez le zip SmartTool (la version 1.6.2) et cliquez sur « ouvrir ». (4) 4 5 Action 5: Saisir un nom significatif(SmartTools) et cliquez sur « OK ». (5) 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. TP1:Eclipse : La fabrique logicielle SmartTools (2)

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

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

20 20 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. TP1:Eclipse : La fabrique logicielle SmartTools (5)

21 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 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 23 TP1:Eclipse : préparation environnement Action 1 : Windows > Preferences 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 24 TP1:Eclipse : préparation environnement (1) Ecran des préférences à paramétrer Paramétrages à Effectuer

25 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) Cliquez sur le bouton « import » pour importer le fichier CleanUp (1). 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 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 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)

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

29 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)Action 1 : Fichier > import ---> on obtient l’écran (1) 1 Action2 : Dérouler l’option «General» puis sélectionner «Existing Projects into Workspace » puis cliquez sur le bouton « suivant »Action2 : Dérouler l’option «General» puis sélectionner «Existing Projects into Workspace » puis cliquez sur le bouton « suivant » Action 3 : Dans l’écran que vous obtenez sélectionnez le bouton Brower pour rechercher le fichier à importer. Les sources à importer sont dans :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 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’importationAction 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 31 TP1:Eclipse : Présentation d’une source Importée Lancement de la Compilation du code importé. Résultats de la compilation voir bas de l’écran doit être SUCCESSFUL Sources générée Compilation GWT A A -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 Windows > Show view > Ant B

32 32 TP1:Eclipse –Démonstation Cas Chat 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.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. L’exécutable de chat se trouve dans /CleUSB/TP1/

33 33 Démonstation : Cas Chat Démarre chat1Démarre chat1 Démarre chat2Démarre chat2 Console OSGiConsole OSGi

34 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 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 36 TP2 : Création des composants -Enoncé Le présent TP, consiste : 1.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 A) D’abord sur la même JVM B) Ensuite sur les JVM différents

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

38 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 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 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 » Nous implémentons le service d’expédition, il s’agit de l’envoie donc output

41 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. 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 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 » Action 2 : Aller dans les sources de « Recepteur.cdml » et mettre à jour Recepteur.cdml, et implémenter le service « message » Remplacer : « Component » par« Recepteur »

43 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 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. 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 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 : 1.Les bundles liés à la plate forme, se sont par exemple dans notre cas -ComponentsManager -ComponentsManager -inria.smarttools.core -inria.smarttools.core -inria.smarttools.ds.local -inria.smarttools.ds.local -inria.smarttools.lib -inria.smarttools.lib -org.eclipse.osgi -org.eclipse.osgi 2. Les bundles liés à notre espace de travail c’est-à-dire ceux de l’application en cours -expéditeur -expéditeur -Recepteur -Recepteur Plus le bundle de démarrage : inria.starter

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

47 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 48 TP 2 : Exécution des composants/ Résultats ExpéditeurRécepteur Exercice de rechercheExercice 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 49 Exécution en environnement distribué Exécution en environnement distribué -Application au P2P- TP 3 : Création et exécution des composants (suite)

50 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 Zone de saisie des messages Zone d’affichage des messages Zone de saisie de l’ID d’une instance à contacter Se connecter à une instance 3. Vous avez chat.starter, -importer le sous eclipse, compiler et exécuter chat sous Eclipse -importer le sous eclipse, compiler et exécuter chat sous Eclipse

51 51 TP 3 : Création et exécution des composants (suite) Enoncé : démarrage plusieurs JVM Il est Question dans ce volet de créer un point de démarrage « boot » pour permettre les connexions distribuées. -Déziper « application.Zip » (voir CleUSB/TP/TP3) -Exporter votre chat dans « application » -Exécuter « chat »


Télécharger ppt "Octobre 2010 LES SEANCES DE TRAVAUX PRATIQUES La Plate forme Le Développement JSE-Eclipse Plugin de base :OGSi/SmartTools Fabrique."

Présentations similaires


Annonces Google