IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

[JarBundler] Changer le Java Application Stub


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Par défaut [JarBundler] Changer le Java Application Stub
    Bonjour,

    je ne sais pas ou poster ce message, donc je mets ca en généralité.

    Grosso modo, sous mac je génère régulièrement un .app pour pouvoir lancer mes applications sous mac.
    Mais depuis peu, il y a eu une mise à jour de java sous mac visiblement, et mes applications ont quelques soucis, tout du moins une librairie à laquelle je fais appel (jdic)

    ce qui est étonnant, c'est que quand je lance l'application sous eclipse, tout fonctionne normalement.
    Si je génère un MonApplication.app (grâce a jarBundler via ant), l'application se lance bien, sauf que quand je fais appel aux éléments de jdic (Desktop.launch() par exemple) et bien la...rien ne se passe.

    Ce qui est encore plus curieux, c'est que si je lance manuellement mon application par une ligne de commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -jar MonApplication.app/Contents/Resources/Java/MonApplication.jar
    la tout fonctionne normalement, preuve que le code est bon

    la version du java qui est utilisé par cette ligne de commande est la suivante :
    java -version
    java version "1.5.0_19"
    je me dis que le jarBundler se base sur une autre version de java que propose mac os, et c'est ca qui entraine ces soucis.

    j'ai essayé de faire ca :
    http://www.informagen.com/JarBundler/StubFile.html
    sans succès, et même en diminuant l'argument vmversion ne change rien

    Avez-vous une idée ? est-ce que qq1 à déjà rencontré ce type de soucis ?

    Merci d'avance

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Par défaut
    Salut!

    J'ai exactement le même problème que toi.
    Je teste sous mon IDE, tout fonctionne mes JOptionPane s'affichent et L'appel se fait à mes classes contenues dans les autres Jar.... Mais lorsque je lance l'appli... rien ne se passe sauf l'ouverture normale.


    C'est assez problématique pour moi, puisque le jar externe sert à valider l'enregistrement de la licence du logiciel... et comme il ne fait pas appel à la classe..... tout passe bien sans que le logiciel ne soit enregistré.. ET là encore.. J'ai seulement ce problème sous MAC... QUand je lance sous windows ou sous linux ou directement par mon .jar principal... tout baigne!

    As-tu réussi à rgler ton problème?

  3. #3
    Membre éclairé Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Par défaut
    Citation Envoyé par lanouettea Voir le message
    Salut!

    J'ai exactement le même problème que toi.
    Je teste sous mon IDE, tout fonctionne mes JOptionPane s'affichent et L'appel se fait à mes classes contenues dans les autres Jar.... Mais lorsque je lance l'appli... rien ne se passe sauf l'ouverture normale.


    C'est assez problématique pour moi, puisque le jar externe sert à valider l'enregistrement de la licence du logiciel... et comme il ne fait pas appel à la classe..... tout passe bien sans que le logiciel ne soit enregistré.. ET là encore.. J'ai seulement ce problème sous MAC... QUand je lance sous windows ou sous linux ou directement par mon .jar principal... tout baigne!

    As-tu réussi à rgler ton problème?

    en fait j'ai pas réussi à résoudre le problème, juste à le contourner en fait.
    J'ai déjà développer des applis qui fonctionnaient très bien avant la mise à jour Java de mac.
    J'ai donc vérifié si mes anciennes applications fonctionnaient encore ou avaient le même soucis.
    et elles fonctionnent normalement.

    Conclusion, elles pointent vers un "bon java"
    J'ai donc "ouvert" le .app que je générais à l'époque et récupéré le JavaApplicationStub et j'ai simplement copié ce fichier la ou je génère mes nouvelles applications.

    Mon script Ant qui génère mes nouvelles .app génère avec ce "Stub" ancien et du coup, mes nouvelles applis pointent vers le même ancien java, enfin je suppose...

    voila comment j'ai contourné...

    pour l'instant ca tient

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Par défaut
    Merci pour la réponse rapide!

    Hum... donc j'imagine que je devrais tenter de compiler mon application avec un java un peu plus ancien... peut-être que comme cela, mon JavaApplicationStub fonctionnerais correctement.
    Du coup, je te pose cette question, puisque tu sembles en connaître assez long sur les application bundle.
    J'aime bien fixer une version de java qui est utilisée par les utilisateurs de mon logiciel. C'est pourquoi quand je la distribue, je livre une JRE avec, selon l'OS de destination. Sous Linux et windows donc, je suis en mesure de faire fonctionner mon logiciel sous une distribution de java (situé à la racine de mon logiciel, dans un dossier jre... puis un script exécute la commande pour lancer à partir de ce java....) La question est donc la suivante:

    Es-ce possible de distribuer une version de Java dans un application bundle et de faire rouler cette application sur cette version précise?

  5. #5
    Membre éclairé Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Par défaut
    Citation Envoyé par lanouettea Voir le message
    Merci pour la réponse rapide!

    Hum... donc j'imagine que je devrais tenter de compiler mon application avec un java un peu plus ancien... peut-être que comme cela, mon JavaApplicationStub fonctionnerais correctement.
    Du coup, je te pose cette question, puisque tu sembles en connaître assez long sur les application bundle.
    J'aime bien fixer une version de java qui est utilisée par les utilisateurs de mon logiciel. C'est pourquoi quand je la distribue, je livre une JRE avec, selon l'OS de destination. Sous Linux et windows donc, je suis en mesure de faire fonctionner mon logiciel sous une distribution de java (situé à la racine de mon logiciel, dans un dossier jre... puis un script exécute la commande pour lancer à partir de ce java....) La question est donc la suivante:

    Es-ce possible de distribuer une version de Java dans un application bundle et de faire rouler cette application sur cette version précise?
    je fais exactement comme toi, du moins sous windows, car sous linux je suppose que les utilisateurs s'y connaissent assez pour installer un jre.

    mais pour Mac, non je n'ai pas trouvé comment faire, sinon je l'aurais déjà fais, comme toi je pense vu tout les soucis que j'ai pu avoir avec les différentes versions (surtout au niveau des combo box)

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Par défaut
    Ok merci.

    Je vais continuer de tenter de faire fonctionner mes trucs...
    C'est vraiment étrange... l'application se lance, mais les boites de dialogue que je fais ouvrir à l'ouverture n'apparaissent pas. Ma nouvelle méthode qui vérifie l'activation du logiciel ne se fait pas appeler, et ce ci uniquement quand je lance l'application avec le applicationStub.. lorsque que je double-clique sur le Jar, tout fonctionne à merveille. Je suis vraiment perplexe!

    Comme toi, je ne pensais pas avoir à y passer autant de temps!

  7. #7
    Membre éclairé Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Par défaut
    Citation Envoyé par lanouettea Voir le message
    Ok merci.

    Je vais continuer de tenter de faire fonctionner mes trucs...
    C'est vraiment étrange... l'application se lance, mais les boites de dialogue que je fais ouvrir à l'ouverture n'apparaissent pas. Ma nouvelle méthode qui vérifie l'activation du logiciel ne se fait pas appeler, et ce ci uniquement quand je lance l'application avec le applicationStub.. lorsque que je double-clique sur le Jar, tout fonctionne à merveille. Je suis vraiment perplexe!

    Comme toi, je ne pensais pas avoir à y passer autant de temps!
    j'ai rencontré exactement les mêmes soucis, tout fonctionnait sous eclipse ou sous un terminal standard, mais via le Stub la...plus rien...du moins plus rien pour ce qui est de la librairie jdic...le reste était plus ou moins normal visiblement

    si tu trouves une autre solution, n'hésites pas

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Par défaut
    C'est un peu du n'importe quoi.. mais tu n'aurais pas ce JavaApplicationStub par hasard?

    Sinon, c'est peux être parceque mon application est compilé sous Windows, avec la JDK 1.6.0_16. Et que le ApplicationStub le plus récent que je possède sois 1.6.0_14.... Sinon sérieusement, je vois pas..

  9. #9
    Membre éclairé Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Par défaut
    Citation Envoyé par lanouettea Voir le message
    C'est un peu du n'importe quoi.. mais tu n'aurais pas ce JavaApplicationStub par hasard?

    Sinon, c'est peux être parceque mon application est compilé sous Windows, avec la JDK 1.6.0_16. Et que le ApplicationStub le plus récent que je possède sois 1.6.0_14.... Sinon sérieusement, je vois pas..
    j'essaie de le joindre la
    Fichiers attachés Fichiers attachés

  10. #10
    Invité de passage
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1
    Par défaut
    Et bien je suis content de voir que je ne suis pas tout seul.
    J'ai développé une appli JAVA qui tourne sous Mac en ce moment et je viens de me rendre compte qu'il y avait une différence de comportement entre la version qui se lance sous Eclipse, le jar exectable et l'application générée par Jar Bundler.
    La façon dont est gérée les JTable est complètement différente entre les deux versions.
    La "solution" que j'ai trouvée pour l'instant c'est de ne pas utiliser le JarBundler pour l'instant et de faire juste un alias vers le jar avec une icone.

    y a-t-il une vrai solution ?
    le JavaApplicationStub peut-il être changé ?

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Par défaut
    Nah c'est pas si compliquer... et en fait.. ça permet de garder la philosophie apple des applicatication bundle. En tout cas.. il ne suffit que de remplacer le JavaApplicationStub par un petit script bidon exécutable et de donner JavaApplicationStub comme nom au fichier... En tout cas.. ça fonctionne à merveille!

Discussions similaires

  1. JAVA : application spécifique à windows ?
    Par Claythest dans le forum Général Java
    Réponses: 17
    Dernier message: 20/07/2007, 15h37
  2. java application et page web
    Par 2tsiris dans le forum Langage
    Réponses: 4
    Dernier message: 18/06/2007, 15h04
  3. Réponses: 6
    Dernier message: 06/09/2006, 13h08
  4. [Expert] Remote debugging of Java application
    Par Grand sorcier dans le forum EDI et Outils pour Java
    Réponses: 3
    Dernier message: 01/06/2006, 14h51
  5. [ eclipse ] java application
    Par hocinema dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/02/2006, 18h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo