Comment executer un fichier .jar "bloqué" sous Linux
Fermé
Lsmyg
-
Modifié le 7 févr. 2022 à 15:57
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 - 8 févr. 2022 à 11:50
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 - 8 févr. 2022 à 11:50
A voir également:
- Lancer un jar en ligne de commande linux
- Invite de commande - Guide
- Site de vente en ligne particulier - Guide
- Partage de photos en ligne - Guide
- Commande terminal mac - Guide
- Aller à la ligne excel - Guide
2 réponses
mamiemando
Messages postés
33268
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
18 septembre 2024
7 780
Modifié le 7 févr. 2022 à 16:04
Modifié le 7 févr. 2022 à 16:04
Bonjour,
Par rapport aux remarques de jns55:
Pour lancer un fichier il faut qu'il ait les droits en exécution. Ça n'est généralement pas le cas d'un fichier
Ensuite, pour que
Méthode 1 : chemin absolu
Méthode 2 : chemin relatif
Bonne chance
Par rapport aux remarques de jns55:
- Un fichier jar n'a pas de raison d'avoir de droits en exécution, tu peux donc ignorer cette piste ;
- Il ne faut pas lancer un fichier
.jar
en root ou viasudo
sauf s'il a de bonnes raisons de les demander, par exemple pour installer des fichiers en dehors de ton home (mais à ce stade, je ne pense pas que ce soit le cas).
Pour lancer un fichier il faut qu'il ait les droits en exécution. Ça n'est généralement pas le cas d'un fichier
jar, qui est lu par
javaquand on exécute
java -jar fichier.jar.
Ensuite, pour que
javasache quel fichier
.jartu veux lancer, il faut soit passer à java le chemin absolu vers le fichier
.jar, soit passer le chemin relatif qui permet de le retrouver. Note que la touche tabulation permet de compléter pour toi le chemin que tu es en train de taper (donc par exemple, si tu tapes /h tabulation cela devrait écrire /home/, puis si tu rajoutes f tabulation cela devrait taper /home/famille. Si ça ne va pas aussi loin que tu veux, appuie deux fois sur tabulation pour voir entre quoi et quoi il hésite et ajoute quelques lettres pour le débloquer). Avec cette méthode, tu seras certain(e) de taper des chemins corrects.
Méthode 1 : chemin absolu
java -jar /home/famille/.minecraft/resourcepacks/forge-1.18.1-39.0.20-installer.jar
Méthode 2 : chemin relatif
cd /home/famille/.minecraft/resourcepacks java -jar forge-1.18.1-39.0.20-installer.jar
Bonne chance
Bonjour,
Commence par te placer dans le répertoire qui contient ton fichier
Commence par te placer dans le répertoire qui contient ton fichier
.jar
cd /home/.../ java -jar forge-1.18.1-39.0.20. jar
Bonjour voici ce qu'il m'indique:
Visiblement je n'ai pas la permission ou le statut permettant d'exécuter ce fichier. Que puis-je faire pour y remédier?
Merci
/home/famille/.minecraft/resourcepacks/forge-1.18.1-39.0.20-installer.jar
bash: /home/famille/.minecraft/resourcepacks/forge-1.18.1-39.0.20-installer.jar: Permission non accordée
Visiblement je n'ai pas la permission ou le statut permettant d'exécuter ce fichier. Que puis-je faire pour y remédier?
Merci
Depuis ton gestionnaire de fichiers, fais un clic droit sur le nom du fichier, choisis "Propriétés" et regarde dans l'onglet "permissions". Tu verras qui est le propriétaire du fichier, les permissions qui sont accordées et que tu peux modifier en cochant des cases. Si le fichier appartient à root, il faut ouvrir le gestionnaire de fichiers en tant que root pour pouvoir les modifier (ou faire cette modification en ligne de commande dans un terminal root).
Ou alors lance-le dans un terminal root : possible que si c'est un programme d'installation il ait besoin des privilèges root.
(soit sudo su soit su suivant ta distro)
Ou alors lance-le dans un terminal root : possible que si c'est un programme d'installation il ait besoin des privilèges root.
(soit sudo su soit su suivant ta distro)
brucine
Messages postés
16741
Date d'inscription
lundi 22 février 2021
Statut
Membre
Dernière intervention
19 septembre 2024
2 367
>
jns55
7 févr. 2022 à 10:54
7 févr. 2022 à 10:54
Bonjour,
Je ne comprends pas grand-chose à Linux.
Ce n'est pas (Forge) un programme indépendant mais un bidouillage pour Minecraft qui s'installe apparemment comme suit dans Ubuntu:
https://www.arubacloud.com/tutorial/how-to-install-mods-on-a-minecraft-server-with-ubuntu-20-04.aspx
Je ne comprends pas grand-chose à Linux.
Ce n'est pas (Forge) un programme indépendant mais un bidouillage pour Minecraft qui s'installe apparemment comme suit dans Ubuntu:
https://www.arubacloud.com/tutorial/how-to-install-mods-on-a-minecraft-server-with-ubuntu-20-04.aspx
7 févr. 2022 à 18:26
En fait, Java c'est ce qui permet dans tous les cas d'ouvrir un fichier .jar?
Est-ce que vous pouvez m'expliquer comment ça marche?
Merci
8 févr. 2022 à 11:50
Tout à fait : jar = java archive.
Est-ce que vous pouvez m'expliquer comment ça marche?
Tu as un aperçu ici (la version anglaise est plus complète). Pour faire simple, c'est une archive zip dans laquelle sont rassemblées les classes.
Généralement un projet écrit en java implique de nombreuses classes (par exemple dans un jeu vidéo, on pourrait imaginer qu'il y ait une classe Personnage, Monstre, Niveau, etc..). Le développeur les écrit en langage java, et chaque classe correspond à un fichier .
Chaque classe est ensuite compilée en bytecode grâce à un compilateur java, typiquement (potentiellement au travers d'un logiciel comme Eclipse). Pour chaque fichier .java, on obtient un fichier compilé en bytecode.
À ce stade le programme est d'ores et déjà exécutable. En effet exécuter un programme en java revient à lancer le bytecode adéquat au travers de la JVM (la machine virtuelle java). Cela se fait en appelant le bon fichier .class via l'exécutable .
Le problème, c'est qu'un projet implique souvent un grand nombre de classe, et on n'a pas envie que l'utilisateur final soit confronté à ces nombreux fichiers, à savoir lequel il doit exécuter au travers de la JVM, etc. Bref c'est peu pratique, et c'est pourquoi avant de redistribuer un programme en java, on les rassemble dans une archive qui va toutes les rassembler et indiquer à java où est le point de départ. Et cette archive, c'est le fameux .
Le fichier offre d'autres avantages. Il peut stocker les modules dont dépend le programme java (ce qui évite ainsi à l'utilisateur final de devoir les installer par lui-même) et être signé (afin que le système d'exploitation de l'utilisateur puisse contrôler que l'archive a été produite par un éditeur de confiance).
Bonne chance