Bien que maven exec fasse l'affaire ici, je l'ai trouvé assez pauvre pour un vrai test. En attendant que shell maven et en espérant que cela puisse aider d'autres personnes, j'ai finalement trouvé ce dépôt. mvnexec
Clonez-le, et faites un lien symbolique avec le script quelque part sur votre chemin. J'utilise ~/bin/mvnexec
comme je l'ai fait. ~/bin
sur mon chemin. Je pense mvnexec est un bon nom pour le script, mais c'est à vous de modifier le lien symbolique...
Lancez-le à partir de la racine de votre projet, où vous pouvez voir les répertoires src et target.
Le script recherche les classes avec la méthode main, offrant une sélection pour en choisir une (Exemple avec mavenized JMeld projet)
$ mvnexec
1) org.jmeld.ui.JMeldComponent
2) org.jmeld.ui.text.FileDocument
3) org.jmeld.JMeld
4) org.jmeld.util.UIDefaultsPrint
5) org.jmeld.util.PrintProperties
6) org.jmeld.util.file.DirectoryDiff
7) org.jmeld.util.file.VersionControlDiff
8) org.jmeld.vc.svn.InfoCmd
9) org.jmeld.vc.svn.DiffCmd
10) org.jmeld.vc.svn.BlameCmd
11) org.jmeld.vc.svn.LogCmd
12) org.jmeld.vc.svn.CatCmd
13) org.jmeld.vc.svn.StatusCmd
14) org.jmeld.vc.git.StatusCmd
15) org.jmeld.vc.hg.StatusCmd
16) org.jmeld.vc.bzr.StatusCmd
17) org.jmeld.Main
18) org.apache.commons.jrcs.tools.JDiff
#?
Si l'un d'entre eux est sélectionné (en tapant le numéro), vous êtes invité à fournir des arguments (vous pouvez éviter avec la touche mvnexec -P
)
Par défaut, il compile le projet à chaque exécution. Mais vous pouvez éviter cela en utilisant mvnexec -B
Il permet de rechercher uniquement dans les classes de test -M
o --no-main
ou seulement dans les classes principales -T
o --no-test
. dispose également d'une option de filtrage par nom -f <whatever>
J'espère que cela vous fera gagner du temps, pour moi c'est le cas.