2009-09-05 7 views
2

J'ai écrit un programme java qui fonctionne comme un utilitaire pour un programme de ligne de commande existant. donc en base tout mon programme est Runtime.getRuntime().exec("myprogram parameter");. J'ai donc exporté ma source java en tant que fichier exécutable-jar en utilisant Eclipse IDE et cela fonctionne bien, cependant j'ai besoin d'inclure myprogram.exe dans le répertoire du fichier jar généré pour fonctionner.y compris un fichier exe à jar

Maintenant, je cherche un moyen d'inclure myprogram.exe dans le fichier jar afin que je puisse le conserver en un seul fichier, une méthode utilisant Eclipse serait préférable.

Répondre

8

Vous pouvez simplement mettre en relief une ressource supplémentaire (comme un , .properties etc.).

Lorsque votre programme Java fonctionne, extrayez le .exe en utilisant Class.getResourceAsStream() et l'écrire dans un répertoire temporaire afin de l'exécuter à partir de là (puisque vous ne pouvez pas exécuter directement à partir du fichier .jar).

+0

merci beaucoup pour la réponse, j'ai mis mon fichier .exe dans le répertoire de ressources Eclipse pour mon projet, où .classpath, .project,/bin et/src existe. L'exe apparaît à l'éditeur de paquet. Maintenant quand je clique droit sur mon projet -> export -> jar runnable il semble que mon fichier jar n'inclut pas ce fichier .exe (comme exe est 5 mb et jar généré est seulement 10 kb) – Hellnar

+0

Eclipse jar export (IIRC) inclut uniquement les ressources de classe. Vous pourriez être en mesure de le réparer en mettant l'exe dans votre répertoire src; Eclipse va le copier pendant la construction vers bin, et il devrait apparaître dans le pot. Cependant, je suggère que vous évaluiez en utilisant Ant pour vos builds, car il permet plus de flexibilité que le système de construction d'Eclipse, il est plus facile à automatiser et il permet de construire votre logiciel sans utiliser Eclipse. – alex

+0

Je voudrais certainement seconder le commentaire re. Fourmi –