Bonjour à tous,
Je me suis remis depuis peu à créer des interfaces avec Swing pour Java. Dans mes applications j’utilise de nombreux fichiers pour permettre de séparer les actions voire utiliser une architecture MVC (Model – View – Controller). Souvent, lorsque j’effectue des tests en ayant modifié plusieurs classes je souhaite recompiler seulement quelques classes et pas toutes celles du dossier /src.
Pour améliorer mon workflow j’ai élaboré un simple Script en BASH qui vous permettra lorsque vous l’appelez de spécifier les fichiers à recompiler et d’exécuter celui que vous avez spécifié en premier.
Par exemple, j’ai de mon côté créé un raccourci pour lancer ce script avec la commande ‘jc’.
Contexte :
J’ai 3 fichiers code source : A.java, B.java, C.java
Je souhaite recompiler les 3 et lancer la classe B.
Je vais donc écrire ‘jc B.java A.java C.java’ ou ‘jc B.java C.java A.java’.
Attention: Pour utiliser ce script il faut que votre variable d’environnement CLASSPATH soit ‘../class’ et que vous travaillez dans une arborescence comme celle ci-dessous:
/
src/
ws/
class/
Vous vous positionnerez dans le dossier ws pour le lancement du script et vos codes sources doivent être dans src/
if [ $# -gt 0 ]; then
echo
echo
echo COMPILING :
for i in "$@"
do
ls -l ../src/"$i".java
javac -d ../class ../src/"$i".java
done
echo
echo
echo EXECUTING :
java $1
else
echo
echo BASH: jc: erreur de parametre
echo
fi
J’espère que ce simple script vous permettra de gagner du temps lors du développement de vos projets. Si vous avez des questions n’hésitez pas à m’envoyer un mail ou un commentaire.