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

Langage Java Discussion :

[DEBUTANT ] Compiler un programme


Sujet :

Langage Java

  1. #1
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut [DEBUTANT ] Compiler un programme
    Bonjour

    Je tiens à préciser que je suis novice en programmation java, je suis dans mes tout début et c'est la grande découverte pour moi en ce moment. Bref, j'ai un petit souci en ce qui concerne la compilation du programme. Je m'explique :

    J'ai suivi toutes les instructions en ce qui concerne l'installation et la configuration de JAVA.

    Voici la version installé : j2sdk1.4.2_16

    Le dossier est bien visible dans le C:\

    --> C:\j2sdk1.4.2_16\

    J'ai été dans les paramètres avancés du système pour effectuer les modifications :

    PATCH : C:\j2sdk1.4.2_16\bin;
    CLASSPATH : .;

    J'ai renitialisé le système (redemarrage) ensuite je suis allé dans le DOS pour effectuer la compilation de mon programme HelloDate.java

    Une fois dans le DOS quelques "cd.." pour retourner à la ligne, ensuite je tape

    javac HelloDate.java

    Un message d'erreur s'affiche :

    error : cannot read : HelloDate.java
    1 error

    Au début j'ai pensé que le problème pouvait venir de l'emplacement du fichier qui se trouvait dans un dossier nommé UE_120 sur le bureau.

    J'ai déplacé le fichier et je l'ai placé sur le bureau. Après un nouvel essaie, toujours le même message d'erreur.

    J'ai placé le fichier dans le C:\, ensuite dans C:\j2sdk1.4.2_16\ , ensuite dans C:\j2sdk1.4.2_16\bin mais j'ai à chaque fois le même message d'erreur !

    J'ai peut-être commis une erreur mais sur le coup, je suis à bout de souffle. Avez-vous un solution à me proposer.

    Cordialement !

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    Salut,

    La seule explication que je vois, c'est que ton fichier ne s'appelle pas vraiment HelloDate.java

    Parfois, sous windows, les extensions sont cachées. Vas sous dos, dans le repertoire et tape "dir" pour voir le vrai nom du fichier.

    De plus, attention aux majuscules minucules, elles comptent beaucoup en Java.

    Sinon je ne vois pas.

    A+
    K

  3. #3
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut
    Re

    Vérification faite, le fichier s'appelle bel et bien HelloDate.java , j'ai également fais attention au majuscule car j'ai appris en débutant avec Java que "Bonjour.java" n'était pas "bonjour.java"

    De ce coté il y a pas de problème !

  4. #4
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    Dans ce cas là, la seule explication c'est que ton fichier est encodé de manière étrange.

    Il faut que ton fichier soit encodé en UTF 8 de préférence.

    Je te conseille d'utiliser un IDE, comme Eclipse, pour écrire tes programmes Java. Tu auras beaucoup moins de mal avec ces problèmes de compilation et de classpath.

    Cependant, juste par curiosité, j'aimerais bien comprendre ton problème.

    Peux tu faire en ligne de commande un :
    et poster le code source de ton fichier ?

    A+
    K

  5. #5
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut
    Re KiLVaiDeN

    Pour répondre à ta question, je vais essayer de détailler les différentes étapes. Je rappelle que je débute juste et je suis à mon premier programme, donc voila :

    J'ai ouvert un fichier texte et après avoir mis le code java, j'ai enregristré le fichier avec l'extension .java

    Voici donc le code mis dans le fichier HelloDate.java

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class HelloDate
        {
        public static void main(String[ ] args)
            {
            System.out.println("Hello Date!"); 
            }
        }
    J'ai également installé Eclipse, mais je débute juste donc j'essaye de prendre la main.

  6. #6
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    Il me semble qu'il faut que tu rajoutes le mot clé "public" devant "class".

    Chaque fichier java doit contenir une et une seule classe "public", correspondant au nom du fichier.

    Si ton fichier s'appelle donc HelloDate.java, tu dois trouver à l'intérieur une et une seule classe publique déclarée comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public class HelloDate {
      // Ici vient le contenu de la classe
    }
    Je te conseille de bien "identer" ton code.

    J'espère que ça répond à ton problème !
    A+
    K

  7. #7
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut
    Re !

    J'ai suivi ton conseil, merci ça marche. Le problème n'était pas l'ajout de "public" mais plutôt une erreur de ma part car dans DOS je ne faisais pas attention, je n'étais pas sur dans le bon répertoire (où se trouve le fichier). Le fichier était sur le bureau et j'étais sur le C:\

    et, la première fois quand j'ai placé le fichier dans le C:\ pour le compiler, j'ai dû ne pas faire attention en lançant la compilation dans le répertoire C:\Users\ alors que le fichiers se trouvait dans le répertoire C:\

    ça marche ! mais je reviendrais surement sur le forum pour d'autres questions JAVA !

    Encore désolé et merci, je n'étais pas très attentif sur ce coup !

  8. #8
    Inactif  
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    497
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 497
    Points : 312
    Points
    312
    Par défaut
    Il me semble qu'il faut que tu rajoutes le mot clé "public" devant "class".
    Il me semble que si on n'indique pas la portée d'une class, le compilateur Java lui assigne la portée Public par défaut ... soit dit au passage.

    Cordialement.

  9. #9
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut
    Bonjour

    Je suis d'accord avec toi 19cmos83, mais lorsque je mets public devant class, ça ne marche pas, j'ai un message d'erreur !

  10. #10
    Expert éminent sénior
    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
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par 19cmos83 Voir le message
    Il me semble que si on n'indique pas la portée d'une class, le compilateur Java lui assigne la portée Public par défaut ... soit dit au passage.
    Non : la visibilité est alors "package-only" (visible seulement par les classes du même package)

    Que signifient les mots-clés public, private et protected ?

    a++

  11. #11
    Membre du Club Avatar de Dan99
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 59
    Points : 49
    Points
    49
    Par défaut
    Re

    Je viens de réessayer en ajoutant public devant class, en effet ça marche, c'est surement moi qui doit me tromper tout le temps, je vais reprendre ma formation à zero, je vais sûrement y arriver

    Merci !

  12. #12
    Inactif  
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    497
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 497
    Points : 312
    Points
    312
    Par défaut
    Non : la visibilité est alors "package-only" (visible seulement par les classes du même package)

    Effectivement.

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

Discussions similaires

  1. [Debutant] Compiler un programme en C++.
    Par zalalus dans le forum Code::Blocks
    Réponses: 6
    Dernier message: 11/05/2009, 15h06
  2. [Debutant] compilation automatique
    Par Yannos94 dans le forum JBuilder
    Réponses: 5
    Dernier message: 05/09/2007, 15h08
  3. [Debutant] [Windows] livre programmation windows
    Par orelero dans le forum Windows
    Réponses: 8
    Dernier message: 11/02/2005, 13h32
  4. [langage] Question débutant compilation PERL
    Par sebbyoguard dans le forum Langage
    Réponses: 5
    Dernier message: 04/09/2004, 19h39
  5. [servlet][debutant] compilation impossible
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 02/03/2004, 11h48

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