Exécutable JAR sur Ubuntu (NetBeans)
Je suis en train d'écrire une simple application Swing dans NetBeans et de le faire sur une machine Ubuntu pour la première fois.
Comme vous le savez, NetBeans crée automatiquement exécutable de Pots pour les projets qui sont "définir comme principale".
Sur Windows, vous pouvez double-cliquer sur un fichier exécutable JAR et il appelle automatiquement le JRE et exécute l'application. Dans Ubuntu, en double-cliquant sur le .jar fichier d'origine du fichier à ouvrir dans le gestionnaire d'archives à la place. Afin de faire fonctionner mon POT, je dois soit faire un clic droit et sélectionnez "Ouvrir avec OpenJDK Java 6 Runtime" ou le lancer depuis la ligne de commande.
À partir de la ligne de commande je n'ai pas de problème que ce soit. Cependant, quand j'essaie de le lancer à partir du menu clic-droit, j'obtiens une erreur qui se lit comme suit:
Le fichier MySwingApp.jar n'est pas marqué comme exécutable...
J'ai donc 2 questions:
- Que dois-je faire pour le définir comme de l'exécutable? Est-ce quelque chose que je peux faire à l'intérieur de NB ou dois-je utiliser le shell? Si je dois définir des autorisations via le shell, n'est-elle pas en conflit avec NB politique de l'auto-génération **exécutable** de POTS? Et quelle commande dois-je utiliser pour inverser le bit d'exécution de toute manière?!?!
- Est-ce juste un Linux le hoquet? Je veux envoyer ce POT à un ami qui exécutent Windows et je voudrais pour eux d'être en mesure de simplement double-cliquer dessus et d'avoir le programme de lancement
Merci pour toutes les suggestions utiles!
Merci! Mais est-ce que mes autres questions? Est-ce quelque chose que je vais devoir le faire à chaque fois que je compile, ou pour tous les JAR-je créer? Quid des utilisateurs de Windows qui je me donner des Pots?
Si vous marquez votre fichier jar exécutable peut vous double-cliquez sur elle et l'exécuter?
Pas de double-cliquant dessus, il s'ouvre le Gestionnaire d'Archives, mais je peux maintenant, cliquez-droit dessus et sélectionnez-le pour l'Ouvrir avec le JRE et qui fonctionne sans jeter l'erreur...**** la minute, j'ai fais une nouvelle version (un nouveau fichier JAR est créé) et essayez de faire un clic-droit d'accès, je suis de retour pour le même problème et aurait chmod x-bits...
Ce n'est pas un Linux hoquet. C'est la façon dont Unix fonctionne.
OriginalL'auteur Sarah | 2011-08-04
Vous devez vous connecter pour publier un commentaire.
Vous devrez modifier manuellement votre processus de build pour obtenir le fichier jar marqué comme exécutable dans Netbeans. Allez à la racine de votre projet et d'ouvrir build.xml. L'en-tête contient des instructions sur l'ajout de processus de construction. Il y a un objectif, "post-pot", qui est appelée après que le pot est construit. Vous aurez besoin pour faire de cette cible, et l'utilisation La fourmi chmod tâche pour modifier votre bocal. Une fois que vous faites cela, il va se produire chaque fois que vous effectuez un fichier jar dans ce projet.
Cela fonctionnera correctement sur votre ami Windows de la machine, aussi longtemps que il a un JRE installé.
Voici un thread sur l'exécution des pots à l'aide de double-cliquer dans Linux.
OriginalL'auteur Paul
Vous pouvez Java comme un binaire natif sur Ubuntu (et un autre linux), c'est une fonctionnalité du noyau. Vous devez installer le binfmt-paquet de soutien à donner le noyau crochets pour exécuter java de cette façon.
Dans Ubuntu, ouvrez un terminal et exécutez:
sudo apt-get install binfmt-support
Faites ensuite votre fichier JAR exécutable
chmod a+x yourjar.jar
Ensuite, vous pouvez exécuter votre BOCAL comme tout les autres binaires en tapant
yourjar.jar
OriginalL'auteur David
Jar-les fichiers ne sont pas de première classe, des exécutables, et ils ne deviennent pas comme par magie exécutables par l'évolution de leur exécutable drapeau.
Si vous exécutez un bocal, vous exécutez la commande
C'est la même chose, comme si vous double cliquez sur un fichier png, et s'attendre à exécuter dans un programme de peinture
Vous n'avez pas besoin de faire de votre png un exécutable, et il ne permettra pas de résoudre un problème.
Au lieu de cela, vous avez à dire à votre environnement de bureau, que faire lors d'un double clic sur un pot ou un Fichier png, et vous devez le faire sur Linux de la même manière que vous le faites dans Windows - peut-être le programme d'installation de Windows le fait pour vous, car il est normalement juste sur l'Environnement de Bureau (Windows) sur le système d'exploitation (Windows), mais Linux a Gnome, KDE, XFCE, LXDE, fluxbox et des millions d'autres.
Et il n'est pas sûr de ce que vous voulez faire avec elle. Depuis le jar fichiers sont une forme particulière de paniers zipfiles, contenant généralement un Manifeste et les classes, la Archivmanager n'est pas une fausse solution, et c'est économiseur d'afficher le contenu de l'archive, que de l'exécuter.
De copier le fichier dans windows n'a aucun effet. Windows ne dispose même d'un exécutable drapeau, mais vous ne devriez pas jouer avec lui. Vous modifiez vos paramètres de bureau, et ceux qui ne peuvent pas être déplacés pour windows, et vous ne voulez pas.
Et si vous avez les bons réglages DE, vous n'avez pas besoin de dire Netbeans ou tout autre IDE à plusieurs reprises, que faire avec le jar fichiers.
OriginalL'auteur user unknown
J'ai passé par Internet et je suis tombé sur un article complet étapes à suivre pour exécuter le fichier jar
http://mlartist.blogspot.in/2012/07/deployment-netbeans-project-in-linux.html
OriginalL'auteur Parth
Les fichiers Jar sont fondamentalement d'un fichier zip, pour créer un fichier exécutable, vous disposez de plusieurs méthodes différentes. Le Meilleur (à mon avis) est d'utiliser ant pour le créer. Ou vous pouvez simplement
echo "Main-Class: YOUR.MAIN.CLASS" >> Manifest
et ensuite créer votre bocal parjar -cmf Manifest JARFILENAME.jar INPUTFILES
ensuite, pour le rendre exécutable sous linux, cliquez droit dessus et cliquez sur propriétés. Puis cliquez sur l'onglet autorisation et de vérification deexecute
. ou vous pouvez être un terminal bamf et de cd pour le pot répertoire etchmod +x JARFILE.jar
HEUREUX NIXING!!
OriginalL'auteur alexmherrmann