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 :

Probleme lancement jar en ligne de commande


Sujet :

Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Points : 62
    Points
    62
    Par défaut Probleme lancement jar en ligne de commande
    Bonjour,

    J'ai un problème bizarre.

    J'ai une petite application qui se lance avec un main et tout se passe bien sous eclipse(le résultat est la création d'un fichier texte)

    Je crée un jar qui se lance très bien en double cliquant dessus.

    Mais lorsque je lance ce jar en ligne de commande avec la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    C:\Users\....\Documents\jar> java -jar app.jar
     
    java.sql.SQLException: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifé
            at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
            at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
            at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
            at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
            at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
            at java.sql.DriverManager.getConnection(Unknown Source)
            at java.sql.DriverManager.getConnection(Unknown Source)
            at fr.exercice.extractmodel.donnees.ConnectionJdbc.getConnexion(ConnectionJdbc.java:26)
            at fr.exercice.extractmodel.main.ExtractModel.main(ExtractModel.java:27)
    Exception in thread "main" java.lang.NullPointerException
            at fr.exercice.extractmodel.donnees.DaoTable.createTableListForFile(DaoTable.java:33)
            at fr.exercice.extractmodel.main.ExtractModel.main(ExtractModel.java:29)
    Alors que ce programme tourne parfaitement sous eclipse ou quand je double clique sur le jar.

    Est-ce que quelqu'un aurait une idée pour faire tourner cela en ligne de commande car j'aimerai bien ajouter des arguments.

    Merci pour vos réponse.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    donne nous le code correspondant à at
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fr.exercice.extractmodel.donnees.ConnectionJdbc.getConnexion(ConnectionJdbc.java:26)

  3. #3
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Points : 62
    Points
    62
    Par défaut
    Voila le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    public class ConnectionJdbc implements Serializable {
    	/**
             * 
             */
    	private static final long serialVersionUID = -8748825453240386661L;
    	static Connection cnx = null;
    	static 	String url = "jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=";
    	static  String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
     
     
    	public static Connection getConnexion(String path){
     
    		try {
    			Class.forName(driver);
    			String completedUrl = url + path + ";UID=admin";
    			System.out.println("completeURL = " +  completedUrl);
    			cnx = DriverManager.getConnection(completedUrl); //Ligne : 26
     
     
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
     
     
    		return cnx;
    	}
    }
    Ensuite dans mon main je mets le chemin du fichier .mdb, cela marche très bien sauf en ligne de commande comme indiqué précédemment.

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    ca n'a pas l'air d'être le code de ce que tu as utilisé. Dans l'output de ton application, on ne vois pas le System.out.println que tu as fais.

  5. #5
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Points : 62
    Points
    62
    Par défaut
    Si c'est le même sauf que j'ai enlevé le sysout pour faire un peu de nettoyage.

    cela affichait exactement ce que je voulais.

    Pour preuve ça marche dans eclipse.

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    on peux justement voir ce que ça affiche quand ça foire? Parce que, de l'extérieur, je n'ai aps la moindre idée de ce que tu lui passe comme url Hors c'est justement elle qui est, a priori, en cause.

Discussions similaires

  1. Probleme d'ouverture VLC ligne de commande
    Par jameson dans le forum Applications et environnements graphiques
    Réponses: 0
    Dernier message: 11/07/2008, 16h48
  2. Indiquer un classpath quand on exécute un jar en ligne de commande
    Par WerKa dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 30/04/2008, 11h28
  3. Réponses: 0
    Dernier message: 29/04/2008, 17h19
  4. probleme pour lancer un jar en ligne de commande
    Par progamer54 dans le forum Langage
    Réponses: 11
    Dernier message: 05/12/2007, 15h35
  5. fichier jar en ligne de commande
    Par andromeda dans le forum Langage
    Réponses: 23
    Dernier message: 04/10/2007, 19h00

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