Je suis en train d'exécuter une application jar sous Ubuntu, donc j'ai installé Java OpenJDK 7 Runtime, mais quand j'ouvrir cette application, je reçu ce message:
Le fichier « /home/aimad/Programms/jMerise/JMerise.jar » est pas marqué comme exécutable. Si cela a été téléchargé ou copié à partir d'une source non fiable, il peut être dangereux de courir. Pour plus de détails, lisez le bit exécutable.
Vous devez d'abord vous assurer que vous disposez d'un environnement d'exécution Java approprié sur votre système. Ubuntu a openjdk dans le repo officiel qui est 99,99% combattable avec Oracle Java, pour l'installer tapez:
sudo apt-get install openjdk-7-jre
Ensuite , créez un fichier appelé
java-jar-launcher.desktop
dans~/.local/share/applications
et mettre le contenu suivant en elle:Ajoutez ensuite la ligne suivante
~/.local/share/applications/mimeapps.list
:application/x-java-archive=java-jar-launcher.desktop;
Maintenant, vous devriez pouvoir simplement double-cliquer sur les fichiers jar pour les lancer, si rien ne se passe, faites un clic droit sur un fichier jar, sélectionnez les propriétés puis allez dans l'onglet "Ouvrir avec" et là vous devriez voir "Java Application Launcher", sélectionnez cela .
Cette méthode est préférable (à mon humble avis) car de cette façon, vous ne donnez pas les autorisations d'exécution aux fichiers jar qui peuvent être potentiellement dangereux. Cette méthode ne fonctionne que dans un environnement graphique et nécessite que l'utilisateur double-clique manuellement sur le fichier.
la source
Puisque vous exécutez votre application jar avec,
java -jar application.jar
cela signifie que java est sur votre chemin. Vous avez besoin de deux choses simples: 1) ajoutez un interpréteur (qui est apparemment#!java -jar
) dans la première ligne de votre fichier jar comme vous le faites avec vos scripts shell:echo '#!java -jar' > app.jar cat application.jar >> app.jar mv app.jar application.jar
Si vous récupérez le contenu de votre fichier jar, vous verrez qu'il commence par ex.:
#!java -jar PK ^lN BOOT-INF/PK ..... .....
2) ajoutez l'attribut execute parchmod +x application.jar
Maintenant, vous pouvez le "lancer automatiquement" via./application.jar
.la source
Si l' exécution d' un fichier .jar à partir des travaux de la ligne de commande (
java -jar myFile.jar
), mais un double-clic dans l'interface graphique ne fonctionne pas, et sisudo chmod +x myFile.jar
apparaît pour réussir mais vous ne pouvez toujours pas ouvert avec double-clic, et si un clic droit sur le .jar fichier> Propriétés> Autorisations> "Autoriser l'exécution du fichier en tant que programme" ne fonctionne pas (c'est-à-dire que la case à cocher revient juste après avoir cliqué dessus), alors le fichier .jar se trouve probablement sur un système de fichiers NTFS, ce qui n'autorise pas l'exécution des autorisations sur par fichier. (Vous pouvez avoir ce problème si vous double démarrage, par exemple, et une partition NTFS partagée entre Ubuntu et Windows).Création d' un lanceur (comme @ tusharkant15 décrit) fonctionnera parce que derrière les scènes que vous exécutiez
/usr/bin/java
, pas le fichier .jar lui - même. Déplacement du fichier .jar à un autre système de fichiers qui ne sont pas NTFS également.la source