Skip to content

Configuration d'un environnement de développement Eclipse pour GeOxygene

ilokhat edited this page Oct 26, 2017 · 31 revisions

Prérequis

Testé avec Eclipse Oxygene https://www.eclipse.org/downloads/eclipse-packages/

JDK >= 8 (pas testé avec le JDK 9) http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Créer un keystore pour le certificat du dépôt nexus forge-cogit

Le système de build de GeOxygene est Maven, qui télécharge des dépendances sur des dépôts distants.

Or certaines des dépendances de GeOxygene se trouvent sur une forge maven hébergée à l'IGN (https://forge-cogit.ign.fr/nexus/#welcome) qui est auto-certifiée. Pour contourner les restrictions de sécurité imposées par Maven sur les liens https, on va importer ce certificat dans un "keystore", qu'on utilisera ensuite dans Eclipse.

On va créer ce keystore et y importer le certificat en utilisant l'outil keytool livré avec le JDK. Sous Linux, il est normalement dans le PATH, mais sous Windows, s'il ne l'est pas on devra appeler la commande avec son chemin complet, par exemple :

C:\Program Files\Java\jre8\bin\keytool

On modifiera les préférences d'Eclipse dans la partie suivante.

Télécharger le certificat depuis votre navigateur comme ceci :

  • Ouvrir votre navigateur et aller sur la page https://forge-cogit.ign.fr/nexus/#welcome

  • Dans la barre de navigation, cliquer sur le cadenas

  • Cliquer sur “More informations”

  • Cliquer sur “Display certificate”

  • Cliquer sur “détails”

  • Cliquer sur “Export”

  • Sauvegarder votre certificat sur votre disque dur. Par exemple: E:\certificat\forge-cogit.crt

La ligne de commande suivante va importer le certificat d’autorité dans un fichier trust.jks

keytool -v -alias forgecogit -import -file E:\certificat\forge-cogit.crt -keystore trust.jks

  • Saisir un mot de passe, par exemple “leschiensaboient”

  • Accepter le certificat

Préférences

Utilisation du fichier trust.jks

Dans Window > Preferences > Java > Installed JRE

Sélectionner le JDK utilisé par défaut et cliquer sur Edit. Ajouter la ligne suivante dans Default VM arguments en spécifiant bien le répertoire où vous avez créé le fichier trust.jks et en remplaçant leschiensaboient par votre mot de passe.

-Djavax.net.ssl.trustStore=E:\certificat\trust.jks -Djavax.net.ssl.keyStorePassword=leschiensaboient

Proxy

Si on est derrière un proxy, comme à l'IGN, modifier les paramètres dans Preferences > General > Network Connections :

  • Active Provider à la valeur "manual"
  • puis on édite les valeurs de "Proxy Entries" pour http et https, avec par exemple pour l'IGN :
    • host : proxy.ign.fr
    • port : 3128
    • ne pas remplir les champs d'authentification

Encodage de texte, éditeur et style

Dans Preferences > General > Workspace :

  • Text File encoding -> UTF8
  • New text file line delimiter -> Unix

Puis dans Preferences > General > Editors > Text Editors, on pourra cocher :

  • Insert spaces for tabs
  • Show line numbers

On pourra importer les préférences de style de code du COGIT, disponibles ici https://github.com/IGNF/geoxygene/blob/master/src/main/resources/java_cogit_formatting_conventions_v1.xml

Cela se fait à Preferences > Java > Code Style > Formatter : Import

Puis on le choisit comme Active Profile :

Plugins

Pour pouvoir importer directement un projet Git Eclipse, on aura besoin de "SCM connectors". Pour les installer simplement :

  • dans File > Import, aller dans Maven, puis "Check Out Maven Project From SCM"
  • cliquez sur le lien "Find more SCM connectors in the m2e Marketplace"
  • dans "m2e Team Provider", on sélectionnera m2e-egit
  • suivre la fin des instructions d'installation (accepter les licences et avertissements de sécurité et redémarrer)

Paramètres pour Maven si on est derrière un Proxy

Si vous êtes derrière un proxy, la dernière étape consiste à configurer Maven pour utiliser le proxy. Pour cela, il faut ajouter un fichier settings.xml à la racine de Maven (même niveau que le repository maven). Ce répertoire est situé à l’endroit suivant :

  • Windows: C:\Users\Augusta.m2\
  • Linux: ~/.m2/

Voici un exemple de fichier settings.xml avec les paramètres pour le se serveur proxy de IGN : `

<interactiveMode>true</interactiveMode>
<usePluginRegistry>false</usePluginRegistry>
<offline>false</offline>

<proxies>
    <proxy>
        <active>true</active>
        <port>3128</port>
        <host>proxy.ign.fr</host>
        <nonProxyHosts>localhost</nonProxyHosts>
    </proxy>
</proxies>

<profiles>
    <profile>
        <id>cogit</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
</profiles>
`

Import de GeOxygene

GeOxygene est organisé comme un projet Maven. Pour l'importer, on fera File > Import, puis :

  • dans Maven sélectionnez "Check out Maven Projects From SCM", puis "Next"
  • cliquez sur "Finish"
  • attendre :)

Si au cours de l'installation, une fenêtre demande "Discover and map Eclipse plugins to Maven plugin goal executions", acceptez (faire "Finish"). Eclipse proposera alors d'installer un nouveau plugin, acceptez et suivez la fin de la procédure comme précédemment (accepter les licences et avertissements de sécurité et redémarrer).