Compiler et exécuter HelloWorld.java

Compiler et exécuter HelloWorld.java - Java - Programmation

Marsh Posté le 22-10-2010 à 12:46:13    

Bonjour,
Je me lance dans l'apprentissage de java et pour l'évènement, je souhaite écrire, compiler et exécuter le programme HelloWord suivant :
Mon code :
~$ cat HelloWorld.java
 

Code :
  1. class FirstApp {
  2.   public static void main (String[] args){
  3.       System.out.println("Hello World" );
  4.  
  5.   }
  6. }


 
Je suis sur Compatible IBM PC sous Gnu/Linux.
 
Pour compiler, ma commande :
~$ java HelloWorld
 
La sortie de java :

Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
   at gnu.java.lang.MainThread.run(libgcj.so.90)
Caused by: java.lang.ClassNotFoundException: HelloWorld not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
   at java.net.URLClassLoader.findClass(libgcj.so.90)
   at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.90)
   at java.lang.ClassLoader.loadClass(libgcj.so.90)
   at java.lang.ClassLoader.loadClass(libgcj.so.90)
   at gnu.java.lang.MainThread.run(libgcj.so.90)


 
Dommage. Que ce passe t-il ?
J'avoue n'avoir encore lu aucun tuto ni faq sur java. j'ai juste copié/collé le code de HelloWord.java.
Que faudrais t-il que je fasse.
Merci de ne pas m'envoyer lire de l'english.

Reply

Marsh Posté le 22-10-2010 à 12:46:13   

Reply

Marsh Posté le 22-10-2010 à 13:08:41    

Pour compiler... Ne serait-ce pas javacc plutôt que java ?
 
:~$ javacc HelloWorld.java
 

Java Compiler Compiler Version 4.1d1 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file HelloWorld.java . . .
org.javacc.parser.ParseException: Encountered " "public" "public "" at line 2, column 1.
Was expecting:
    "PARSER_BEGIN" ...
     
Detected 1 errors and 0 warnings.


 
Arf...

Reply

Marsh Posté le 22-10-2010 à 13:43:15    

bonjour :o
 
1- une classe main doit etre publique
2- une classe publique doit etre dans un fichier du meme nom que la classe
3- Ada, c'est mieux


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 22-10-2010 à 13:43:44    

4- c'est javac, pas javacc (qui est un compilateur de compilateur  [:edhelas] )


Message édité par kadreg le 22-10-2010 à 13:44:14

---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 22-10-2010 à 13:44:51    

5- cherche le topic du lcasspath, je pense que dans 10 minutes, tu vas poser une question en rapport :D


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 22-10-2010 à 13:58:51    

Merci kadreg !
 

13:55:50@np:~$ cat HelloWorld.java
 
public class HelloWorld {
    public static void Main ( String[] args ) {
 System.out.println( "Hello world!" );  
    }
}
13:56:04@np:~$ javac HelloWorld.java
13:56:16@np:~$ java HelloWorld
no suitable method `main' in class
13:56:24@np:~$ emacs HelloWorld.java
13:56:48@np:~$ javac HelloWorld.java
13:56:57@np:~$ java HelloWorld
Hello world!
13:57:01@np:~$


 
Pas de problème de path pour le moment. Je suis un lent.

Reply

Marsh Posté le 22-10-2010 à 14:01:09    

sisi, mais tu ne le sais pas encore :D rajoute du namespacing :D


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 22-10-2010 à 14:06:55    

Euh, si son code c'est comme indiqué en premier post, son fichier devrait pas s'appeler FirstApp.java ou bien il devrait pas renommer sa classe en HelloWorld?
EDIT: ah je vois qu'il a renommé deux posts plus haut.
A+,

Message cité 1 fois
Message édité par gilou le 22-10-2010 à 14:08:14

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 22-10-2010 à 14:10:01    

gilou a écrit :

Euh, si son code c'est comme indiqué en premier post, son fichier devrait pas s'appeler FirstApp.java ou bien il devrait pas renommer sa classe en HelloWorld?
A+,


 
Oui, ce que dit kadreg, ce que je fais.
Merci gilou, A+.

Reply

Marsh Posté le 22-10-2010 à 14:10:36    

prends une photo de toi avec un poisson sur la tete :D


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed