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

Eclipse Java Discussion :

[Jar-HSQLDB] Mini application complète avec Eclipse


Sujet :

Eclipse Java

  1. #1
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut [Jar-HSQLDB] Mini application complète avec Eclipse
    Voilà, en prévision d'une future application plus grosse, j'ai fait un petit exemple complet, le plus simple possible, d'utilisation de HSQLDB en mode Standalone.

    C'est parfait, sous Eclipse, ça roule à merveille. La bdd est créée, le moteur fonctionne super et ça donne ça :



    Bien sûr, j'ai ajouté le JAR externe de HSQLDB, mais mon soucis, c'est que quand j'exporte tout le projet en un fichier jar, cela ne fonctionne plus.

    Voici comment est arrangé mon dossier-projet :



    J'ai délà lu tous les posts parlant d'export JAR, mais je n'arrive pas à m'en sortir.
    Voici les deux seules classes nécessaires qui permettent de créer cette mini-application didactique (FenetreDesClients.java et HSQLDBConnector.java) :

    http://www.developpez.net/forums/att...7&d=1198277370
    et
    http://www.developpez.net/forums/att...8&d=1198277377

    Mon but est d'arriver à déployer une future application qui utilisera HSQLDB dans un simple folder... Ce folder contiendra le jar de l'application, le jar de HSQLDB, et c'est aussi dans ce folder que seront créés les fichiers de la BDD. Ce qui permettra de rapidement faire un backup.
    Et ce système sera simple à déployer chez le client...

    Mais pour l'instant, mes essais sont infructueux...

    Qui peut m'aider ?

  2. #2
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Il ressemble à quoi ton manifest ?

    Il faut que tu renseignes le chemin relatif vers le jar d'HSQL.

    Personnellement j'utilise HSQLDB dans une apllication externe sans soucis.

  3. #3
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut
    En fait, je laisse Eclipse rédiger le manifest (il est fait avec le wizard...)

    Et c'est vrai que dans le wizard, je ne suis arrivé nulle part à expliquer à Eclipse que le chemin du jar de HSQLDB est relatif au folder présent...

    Mon manifest ne contient que ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Manifest-Version: 1.0
    Main-Class: FenetreDesClients

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour.
    C'est un méga-classique des problèmes ...
    En fait, quand eclipse exécute ton programme, il configure implicitement le classpath de la JVM pour y inclure les jars ajoutés au build path.
    Tu peux essayer de faire une p'tite recherche dans ce forum pour t'en convaincre

    La solution serait d'utiliser FatJar par exemple qui permet d'assembler les jars du buildpath dans le jar final, mais pas vraiment super clean comme solution.
    Ou encore, de modifier à la main le manifest du jar pour y inclure les autres jars nécessaires.

    Bonne chance.

  5. #5
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut
    Je vais refaire une lecture des posts de ce forum, qui parlent de la façon de constituer un manifest soi-même à la main...
    Je fais mes tests, et puis je reviens vers vous pour vous dire si ça marche ou pas...


  6. #6
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut
    Pas simple ! Pas simple, l'export d'un exécutable...

    J'ai essayé le manifest suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Main-Class: FenetreDesClients
    Class-Path: .\hsqldb.jar
    Sauvé dans un petit fichier texte dans le folder du projet, et en cochant l'option :
    "Use existing manifest from workspace"

    Et j'obtiens un message d'erreur, Eclipse refusant alors carrément de me créer le jar :

    "JAR creation failed. See details for additional information :
    Resource is out of sync with the file system: '/hsqldb-testeur/manifest.txt'."

    Qu'est-ce qui cloche ?

  7. #7
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Citation Envoyé par calogerogigante Voir le message
    Pas simple ! Pas simple, l'export d'un exécutable...

    J'ai essayé le manifest suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Main-Class: FenetreDesClients
    Class-Path: .\hsqldb.jar
    Sauvé dans un petit fichier texte dans le folder du projet, et en cochant l'option :
    "Use existing manifest from workspace"

    Et j'obtiens un message d'erreur, Eclipse refusant alors carrément de me créer le jar :

    "JAR creation failed. See details for additional information :
    Resource is out of sync with the file system: '/hsqldb-testeur/manifest.txt'."

    Qu'est-ce qui cloche ?
    Fais un refresh sur ton projet. Ca veut dire que la version de ton fichier dans Eclipse ne correspond pas à version du fichier sur le disque dur.

  8. #8
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut
    Super !! Ca marche !!
    Un grand merci à vous tous, et particulièrement à Baptiste.

    Je peux en effet maintenant avoir un folder avec le jar de mon application, le jar de hsqldb et les fichiers de la BDD... Et déplacer ce folder où je veux dans l'arborescence de mon disque dur : et tout est toujours nickel...

    Je mets ce post en résolu !!

    P.S. : je vais probablement deleter les fichiers mis temporairement dans mon espace web, ainsi que les fichiers *.java. Alors, pour garder ce post utile à d'autres personnes intéressées par HSQLDB et la problématique du jar, je joins ces pièces jointes à ce dernier message pour garder une trace du "matos"...
    Images attachées Images attachées   
    Fichiers attachés Fichiers attachés

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 20
    Points : 22
    Points
    22
    Par défaut Le probleme persiste
    Merci pour la conversation,
    Pour moi, dans eclipse, tout marche.bien.
    J'interagis bien avec la bd hsqldb dans eclipse, mais, l'executable (.jar) n'execute que la partie main qui n'est pas concernée par la bd (base de données).

    Moi, je crois que la bd n'est pas inclu dans le .jar après creation de l'executable.

    Alors, je ne sais pas quel genre de compilation il faut faire.
    C'est pourquoi, je viens solliciter votre.contribution.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Application RMI avec eclipse
    Par arnaudkenf dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 26/08/2009, 22h32
  2. Comment developper une application Swing avec Eclipse
    Par Haya-Jiji dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 16/04/2009, 03h02
  3. application.properties avec Eclipse
    Par fk04 dans le forum Struts 1
    Réponses: 6
    Dernier message: 02/09/2007, 13h26
  4. deployer une application créé avec eclipse
    Par Mickael Scofild dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 31/08/2007, 11h36
  5. Deploiement d'applications SWT avec Eclipse
    Par Silvergrom dans le forum Langage
    Réponses: 2
    Dernier message: 18/10/2006, 15h26

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