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

Maven Java Discussion :

compiler un fichier java par l'invite de commande DOS


Sujet :

Maven Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut compiler un fichier java par l'invite de commande DOS
    Bonjour ,

    Sur ma machine (environnement Windows XP), j'ai installé jre6 et le jdk1.6.0

    Je cherche à compiler un fichier java par l'invite de commande.
    L'exécutable qui doit permettre de compiler se nomme javac.exe et se trouve dans C:\Program Files\Java\jdk1.6.0_20\bin.

    Dans mes variables d'environnement système, j'ai :

    Path=C:\Program Files (x86)\Mozilla Firefox;C:\Program Files\Java\jre6\bin;C:\Program Files\Java\jdk1.6.0_20\bin;C:\Program Files\Junit-4-8-1

    Classpath=.;C:\Program Files\QuickTime\QTSystem\QTJava.zip;C:\Program Files\Java\jdk1.6.0_20\bin;C:\Selenium\src-1.0.3\selenium-java-client-driver-1.0.1\selenium-java-client-driver.jar;C:\Program Files\Junit-4-8-1


    Lorsque j'utilise la commande: javac MonFichierJava.java

    j'ai le message d'erreur suivant:

    cannot access junit.framework.testcase
    class file for junit.framework.testcase not found


    Pensez-vous que mes variables d'environnement sont mal définies?
    Est-ce que c'est dû à l'emplacement de junit.jar sur le disque?

    Merci pour vos réponses.

  2. #2
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    283
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 283
    Points : 380
    Points
    380
    Par défaut
    Citation Envoyé par MalcolmIT Voir le message
    Bonjour ,

    Sur ma machine (environnement Windows XP), j'ai installé jre6 et le jdk1.6.0

    Je cherche à compiler un fichier java par l'invite de commande.
    L'exécutable qui doit permettre de compiler se nomme javac.exe et se trouve dans C:\Program Files\Java\jdk1.6.0_20\bin.

    Dans mes variables d'environnement système, j'ai :

    Path=C:\Program Files (x86)\Mozilla Firefox;C:\Program Files\Java\jre6\bin;C:\Program Files\Java\jdk1.6.0_20\bin;C:\Program Files\Junit-4-8-1

    Classpath=.;C:\Program Files\QuickTime\QTSystem\QTJava.zip;C:\Program Files\Java\jdk1.6.0_20\bin;C:\Selenium\src-1.0.3\selenium-java-client-driver-1.0.1\selenium-java-client-driver.jar;C:\Program Files\Junit-4-8-1


    Lorsque j'utilise la commande: javac MonFichierJava.java

    j'ai le message d'erreur suivant:

    cannot access junit.framework.testcase
    class file for junit.framework.testcase not found


    Pensez-vous que mes variables d'environnement sont mal définies?
    Est-ce que c'est dû à l'emplacement de junit.jar sur le disque?

    Merci pour vos réponses.
    Bonjour,

    Il faut vérifier que ton junit.jar est accessible par le classpath. Vérifie qu'il est bien dans le dossier "C:\Program Files\Junit-4-8-1" et pas dans un de ses sous-dossiers. Déplace le au besoin.

    Si tu veux éviter à l'avenir ce genre de problèmes, il existe des outils tels que ant ou surtout maven qui simplifient la gestion des dépendances pour chaque projet.


    EDIT : Il est aussi possible que l'erreur vienne de tes sources ... la classe que tu doit importer est "junit.framework.TestCase". Vérifie que tu n'a pas oublié les majuscules.

    A +

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut javac
    Merci pour ta réponse Grimly.

    En fait j'ai simplement ajouté ";C:\Selenium\src-1.0.3\selenium-server-1.0.3\selenium-server.jar;" dans la variable classpath par rapport à la valeur précédente:

    Maintenant classpath=.;C:\Program Files\QuickTime\QTSystem\QTJava.zip;C:\Selenium\src-1.0.3\selenium-server-1.0.3\selenium-server.jar;C:\Program Files\Java\jdk1.6.0_20\bin;C:\Selenium\src-1.0.3\selenium-java-client-driver-1.0.1\selenium-java-client-driver.jar;C:\Program Files\Junit-4-8-1

    J'ai recompilé sur l'invite de commande avec: javac SearchTest.java
    puis cela m'a généré dans le répertoire de ce fichier un fichier SearchTest.class qui semble être le résultat de la compilation du fichier java.

    Cordialement,

    MalcolmIT

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut @ Grimly
    il existe des outils tels que ant ou surtout maven qui simplifient la gestion des dépendances pour chaque projet.
    Je ne comprends pas ce que vous voulez dire par "simplifier la gestion des dépendances"?

    Est-ce que cela permet de ne pas avoir à modifier à chaque fois la variable d'environnement classpath?

    Cordialement,

    MalcolmIT

  5. #5
    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
    Sauf cas exceptionnel, on ne modifie JAMAIS la variable d'environnement CLASSPATH, ceci influencerais toutes les applications java et pas seulement celle que tu essaie de compiler. Pour rajouter des librairies à la compilation:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javac -classpath librairie1.jar;librairie2.jar fichier.java
    pour exécuter

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -cp .;librairie1.jar;librairie2.jar monpackage.MaClasse
    ou, quand on a fait un jar propre:

    maven est un outils qui gère automatiquement les dépendance. Tu lui dit " mon projet a besoin de junit en version 3.1", il va le télécharger sur internet et l'ajoute à ton classpath de compilation comme un grand. C'est vachement plus facile, plus besoin de télécharger ou de jouer avec la ligne de commande.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut maven
    Donc quelle doit être la valeur par défaut de la variable classpath?

    Maven 2.2.1 est-il compatible avec le JDK 1.6 ?

    Merci

  7. #7
    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
    1) la valeur mise par ton installeur java. Si t'as un doute, tu la retire, ca devrais faire l'affaire

    2) y a pas de raison que maven ne sois pas compatible avec java 6.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut maven
    Bonjour,

    j'ai installé le plugin Maven pour Netbeans 6.9



    A chaque démarrage de Netbeans, Selenium Server est en mode "start".


    J'ai suivi la procédure comme indiqué dans le lien http://mojo.codehaus.org/selenium-ma...gin/usage.html

    Le mvn --version semble fonctionner


    Parcontre, quand je saisis dans l'invite de commande: mvn install , j'obtiens:



    Quand je saisis : mvn selenium:start-server, j'obtiens:



    Quelqu'un peut-il m'aider à résoudre ce qui ne va pas?


    Merci.

  9. #9
    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
    maven n'arrive pas a télécharger ses composants. Soit la machin où tu compile n'a pas accès à internet, soit t'as des règles de firewall qui bloquent java et l'en empêchent.

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 17
    Points : 10
    Points
    10
    Par défaut maven et selenium maven plugin
    Effectivement la politique de sécurité de l'entreprise dans laquelle je réalise mon stage empêche l'accès au fichier.

    Pour terminer l'installation manuellement, où faut-il placer le fichier .pom?
    http://repo1.maven.org/maven2/org/ap...plugin-2.3.pom

    Le répertoire pour Apache Maven est : C:\Program Files\ApacheMaven\apache-maven-2.2.1.

    Est-ce que je dois inclure dans le fichier pom le code décrit dans entre les balises <plugin> ?
    (cf. http://mojo.codehaus.org/selenium-ma...gin/usage.html)

  11. #11
    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
    houla, si ta machine n'a pas accès à internet pour télécharger, tu va galérer sec! Maven télécharge toutes ses dépendance, le maven que tu "installe" n'est qu'un noyau minimum capable de télécharger le reste. En l'occurence, tous les téléchargements finissent dans le .m2/repository de ton home directory. Pour les cas où une connection internet directe n'est pas possible, il faut installer un repository en interne sur une machine qui fera l'interface avec l'extérieur et gardera tout en cache.

Discussions similaires

  1. compilation de fichier java 'Final static'
    Par tarekphp dans le forum Linux
    Réponses: 1
    Dernier message: 12/05/2009, 11h16
  2. Compiler des fichier java, mais à partire d'un programme Java.
    Par Djobird dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 06/11/2007, 21h44
  3. comment compiler un fichier .java avec cygwin
    Par tihami dans le forum Windows
    Réponses: 2
    Dernier message: 18/04/2007, 10h42
  4. Compiler Le fichier JAVA (Possedant une methode NATIVE) JNI
    Par Serger dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 14/02/2007, 19h32
  5. compiler un fichier .java
    Par Mehdi_82 dans le forum Langage
    Réponses: 5
    Dernier message: 08/08/2006, 10h20

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