Projet SIREN représentant une application JAVA permettant de positionner un drone sous-marin avec une précision de 50cm. Le positionnement est stocké dans la base de données pour que celui-ci puisse ensuite être affiché dans QGIS.
- app
Centre de l'application. Cette partie représente la totalité du projet au niveau de l'interface graphique.
- lib
Coeur logique de l'application. Cette partie représente toute la partie librairie du projet. La librairie est utilisée par
app
etsimulator
. - simulator
Simulateur du drone. Cette partie représente la totalité de l'interface en ligne de commande du simulateur.
Architecture de SIREN Architecture du Simulateur
Les outils suivants sont requis :
- JDK 8u112 (+ JRE)
- QAPlugin Suite
- Checkstyle
- FindBugs
- PMD
- QAPlugin Suite
- Scene Builder
- QGIS 2.18 (optionnel : remplacable par la VM de référence)
- IntelliJ Ultimate 2016.3
- PyCharm Professional 2016.3 (pour le dev QGIS/python - si nécessaire)
- CLion 2016.3 (pour le dev ArduSub - si dev drone nécessaire)
- VMware WorkStation
- VM de référence : http://szymans.com/VM/AquaDrone-VM.zip
- VM de développement ArduSub : http://szymans.com/VM/AquaDrone-Dev.zip
- S1 (06/02): Développement majeur
- S2 (13/02): Débuggage des applications et des algorithmes
- S3 (20/02): Développement de l'interface JavaFX (SIREN)
- S4 (27/02): Développement du module QGIS
- S5 (06/03) : Livraison et test du drone
Seul les lieutenants peuvent valider un merge request sur la branch MASTER
du dépôt.
- Thibault YOU (Code)
- Loïc SZYMANSKI (Code)
- François VANDERPERRE (Algorithme)
- Jérôme GOASDOUE
Il est nécessaire que GIT soit installé sur le poste. Pour configurer GIT lors de la première exécution :
git config --global user.name "John DOE" # Prénom NOM
git config --global user.email [email protected] # Adresse email
Pour cloner le dépot en ligne de commande :
git clone https://lab.collombj.com/LastProject/siren-java-project.git
Pour cloner le dépot depuis une interface, il faut utiliser l'URL suivante :
Pour générer les JARs :
mvn clean install
Les jars sont stockés dans :
|--siren-java-project
|--app
| |--build
| |--app-1.0.jar # JAR SIREN sans dépendances
| |--app-1.0-jar-with-dependencies.jar # JAR SIREN avec dépendances
|--lib
| |--build
| |--lib-1.0.jar # JAR de la librairie (pour les dépendances)
|--simulator
|--build
|--simulator-1.0.jar # JAR Simulateur sans dépendances
|--simulator-1.0-jar-with-dependencies.jar # JAR Simulateur avec dépendances
ATTENTION : Les JARs ne sont pas présents dans le dépot de base. Il est impératif de les générer (soit par ligne de commande, soit avec IntelliJ)
Pour lancer un JAR :
java -jar $nomDuJAR
La compilation et l'exécution dans IntelliJ IDEA requiert un paramétrage particulier.
Run
>Edit Configurations...
Add
(+) >JAR Application
- Name :
App
- Path to JAR :
app/build/app-1.0-jar-with-dependencies.jar
- JRE :
1.8
(JRE relatif à Java 8) - Before Launch :
- Supprimer via
Remove
(-) toutes les entrées - Ajouter via
Add
(+) - Sélectionner
Run Maven goal
- Saisissez
clean install
- Supprimer via
- Valider
- Name :
App
en haut à droiteRun
(>) en haut à droite
Même chose à réaliser pour l'exécution du simulateur avec les paramètres suivants :
- Name :
Simulator
- Path to JAR :
simulator/build/simulator-1.0-jar-with-dependencies.jar
- Pour le lancement (étape 3), choisir
Simulator
au lieu deApp
Pour lancer les tests, il faut exécuter la commande suivante :
mvn clean test
Dans IntelliJ IDEA, il faut réaliser quelques manipulations :
Run
>Edit Configurations...
Add
(+) >Maven
- Name :
Test
- Working directory:
siren-java-project
(Chemin complet du répertoire racine du projet) - Command line:
clean test
- Name :
Test
en haut à droiteRun
(>) en haut à droite
Les dépendances sont gérées par Maven :
JUnit:4.12
(pour les tests uniquement)commons-cli:1.3.1
postgresql:9.4.1212