Si vous avez un fichier jar appelé myJar.jar
situé dans / myfolder et que vous souhaitez utiliser la classe appelée à myClass
partir de celui-ci, comment procédez-vous à partir de la ligne de commande?
Je pensais que ce serait d'aller dans le répertoire et de dire java -cp myJar.jar.myClass
mais cela ne fonctionne pas. Toute aide serait appréciée.
java
command-line
jar
Jim
la source
la source
java -cp myJar.jar myClass
fonctionne bien pour moi - avez-vous une période parasite dans votre ligne de commande au lieu d'un espace?Réponses:
Utilisez
java -cp myjar.jar com.mypackage.myClass
.Si la classe n'est pas dans un package, alors simplement
java -cp myjar.jar myClass
.Si vous ne vous trouvez pas dans le répertoire où
myJar.jar
se trouve, vous pouvez faire:Sur les plates-formes Unix ou Linux:
java -cp /location_of_jar/myjar.jar com.mypackage.myClass
Sous Windows:
java -cp c:\location_of_jar\myjar.jar com.mypackage.myClass
la source
Tu veux:
La documentation donne l'exemple suivant:
la source
Il existe deux types de fichiers JAR disponibles en Java:
Fichier jar exécutable / exécutable qui contient le fichier manifeste. Pour exécuter un jar exécutable, vous pouvez utiliser
java -jar fileName.jar
oujava -jar -classpath abc.jar fileName.jar
Fichier jar simple qui ne contient pas de fichier manifeste, vous devez donc simplement exécuter votre classe principale en donnant son chemin
java -cp ./fileName.jar MainClass
la source
En supposant que vous soyez dans le répertoire où se trouve le
myJar.jar
fichier et quimyClass
contient unepublic static void main()
méthode:Vous utilisez la ligne de commande suivante:
Où:
myJar.jar
est dans le chemin actuel , notez que ce.
n'est pas dans le chemin actuel sur la plupart des systèmes. Un chemin complet est également préféré ici.myClass
est un chemin d' accès complet au package vers la classe, l'exemple suppose qu'il semyClass
trouve dans le package par défaut, ce qui est une mauvaise pratique, s'il se trouve dans un package imbriqué, ce serait le cascom.mycompany.mycode.myClass
.la source
C'est la bonne façon d'exécuter un
.jar
, et quelle que soit la classe qui.jar
devrait avoirmain()
et les paramètres suivants sont les suivants:la source