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

avec Java Discussion :

Une appli Java standalone, sans nécessité d'installer le runtime Java


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 11
    Par défaut Une appli Java standalone, sans nécessité d'installer le runtime Java
    Je souhaitais savoir s'il est possible de se passer du runtime Java pour exécuter une application, afin de bénéficier d'un programme autonome qui ne nécessiterait pas l'installation préalable du Framework.

    Autrement dit, est-il possible d'intégrer le runtime à l'application ?

    Si oui :
    - existe t-il un outil qui permettrait de n'intégrer que ce qui est utilisé par l'application (et non le runtime tout entier) ?
    - cela est-il réalisable pour une exécution sur PC et Mac ?
    - cela est-il fiable ? Est-ce utilisé ? Ou est-ce une solution "bidouillage" ?

    Merci de ne pas lancer un débat sur l'intérêt d'une telle opération. Ma question porte uniquement sur la faisabilité de la chose.

    Merci à vous.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Domi69 Voir le message
    Autrement dit, est-il possible d'intégrer le runtime à l'application ?
    Pas avec une application Java standard. Par contre tu peux déployer le JRE sans l'installer

    Sinon ce doit être possible en utilisant un compilateur natif comme GCJ ou JET Excelsior... mais tu as quand même un runtime à déployer !

    Citation Envoyé par Domi69 Voir le message
    - existe t-il un outil qui permettrait de n'intégrer que ce qui est utilisé par l'application (et non le runtime tout entier) ?
    Je ne pense pas que ce soit fiable : avec la reflection et l'encapsulation c'est difficile de savoir précisément les classes qui seront utilisées, et leurs dépendances...


    a++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 11
    Par défaut
    Merci de ta réponse.

    Je retiens donc qu'il est tout à fait possible de déployer le JRE sans l'installer.

    C'est déjà une très bonne nouvelle. J'espère que c'est possible sur les 3 plateformes PC/Mac et Linux...

    A+

  4. #4
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Je ne pense pas que ce soit fiable : avec la reflection et l'encapsulation c'est difficile de savoir précisément les classes qui seront utilisées, et leurs dépendances...
    Je sais pas ce qu'il en est au final, mais j'avais entendu dire que avec le Java kernel il allait devenir possible de faire cela.
    Il faudrait éxecuter le programme dans un JVM avec l'option "verbose "pour récupérer la liste des classe utilisées. Ce n'est certes pas parfait, mais a moins d'buser de la réflexion, ça devrait suffir.

  5. #5
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Uther Voir le message
    Je sais pas ce qu'il en est au final, mais j'avais entendu dire que avec le Java kernel il allait devenir possible de faire cela.
    Non : Java Kernel permet d'installer un JRE minimal, mais suffisant pour exécuter la plupart des petites applications (les applets en particulier). Par contre une fois installer le téléchargement du reste du JRE se fera automatiquement en tâche de fond... Au final cela revient à installer le JRE standard !

    L'objectif est simplement d'installer le JRE un peu plus rapidement, pour lancer l'application plus vite...

    http://java.sun.com/javase/6/6u10faq.jsp#JKernel

    Citation Envoyé par Uther Voir le message
    Il faudrait éxecuter le programme dans un JVM avec l'option "verbose "pour récupérer la liste des classe utilisées. Ce n'est certes pas parfait, mais a moins d'abuser de la réflexion, ça devrait suffir.
    Dans une application vraiment basique peut-être...

    Le problème c'est que l'exécution d'une application ne permet généralement pas d'exécuter "tout le code" : il y aura toujours des sections de code qui ne seront exécuté que dans des cas très précis voir très rarement (le 'else' d'une condition, le bloc catch d'un traitement, etc.).

    De plus le contexte d'exécution peut engendrer l'utilisation d'autres classes...


    Bref : ce n'est pas si évident que cela, et pas vraiment fiable à mon avis.

    a++

  6. #6
    Membre émérite Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Par défaut
    salut,

    vous pensez quoi du projet harmony http://harmony.apache.org/
    est-ce que c'est une solution dans les cas pareils??

  7. #7
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Heu... Le projet Harmony est un JRE...


    a++

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/05/2013, 20h15
  2. [DEV] Porter une appli sous MacOS sans Mac :aie:
    Par Uther dans le forum Apple
    Réponses: 6
    Dernier message: 22/12/2007, 14h07
  3. Réponses: 6
    Dernier message: 13/11/2006, 16h29
  4. Réponses: 1
    Dernier message: 09/11/2006, 12h39
  5. Installation d'une appli en delphi, utilisant Oracle
    Par nilna972 dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/11/2003, 13h12

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