Tom's Guide > Forum > Programmation > [Java] message d'erreur lors de l'éxécution

[Java] message d'erreur lors de l'éxécution

Forum Programmation : [Java] message d'erreur lors de l'éxécution

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour à tous. Je commence seulement à apprendre le Java. J'ai fais une petite fonction, je la compile dans dos via javac.exe (j'utilise j2sdk et netbeans 4.1). Mais lorsque je veux la lancer avec java.exe, un message d'erreur s'affiche :
donc je tape ......\java args a b c d et voilà le message :

Citation :

Exception in thread "main" java.lang.NoClassDefFoundError: args/class



je vous donne aussi le code de la fonction, c'est vraiment pas compliqué.

Citation :

public class args {

public static void main(String[] arg){
int i;
System.out.println("nombre d'arguments = "+arg.length);
for(i=0;i<arg.length;i++){
System.out.println("arg["+i+"]= "+arg[i]);
}//for
}//main
}//classe



j'ai essayé avec d'autre fonction toutes plus simple que les autres et ca ne fonctionne pas non plus.
Merci d'avance

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

ton fichier s'appelle bien args.java ?

Répondre à khayyam

oui, et une fois que je le compile il devient args.class

Répondre à mousk@IDN

pour info j'avais deja fait une execution y'a qq mois avec un tutorial (sais pu c'est lequel) et ca avait marché... personne ne pourrait m'aider plz :) ?

Répondre à mousk@IDN

C'est pas en Java que toutes les classes doivent commencer par une majuscule ? (c'est-à-dire "Args" au lieu de "args" ).

Répondre à CRicky

oui c'est ce que l'on m'a di, j'ai essayé en changeant le nom de la classe (donc du fichier aussi => Arg.java) mais ca marche pas.
en fait pour le message d'avant c'est parceque je faisait java args.class au lieu de java args
mais maintenant ca me met un autre message:

Citation :

E:\programmation\J2SDK\bin>java Args
Exception in thread "main" java.lang.NoClassDefFoundError: Args <wrong name: javaaplication1/Args>
at java.lang.ClassLoader.defineClass1<Native Method>
at java.lang.ClassLoader.defineClass<ClassLoader.java:620>
etc...


j'ai pensé que c'était le nom args qui était réservé, j'ai essayé avec un autre nom mais ca marche toujours pas...

Répondre à mousk@IDN

Et tu lances le "java Args" en étant dans le répertoire qui contient le Args.class ?

Répondre à CRicky

oui oui, on me di qu'apparement il faut mettre le nom complet de la classe principale, c'est à dire aussi le nom du packtage. v essayer ca :)
merci tout le monde ;)

Répondre à mousk@IDN

salut pour moi le probleme ne viens pas du nom de ta classe.
La signature d'une méthode de type main est "public static void main(string[] arg)
mais ca ne veut pas dire qu'elle importe un paramètre de type string.
pour moi le probleme vient du fait que arg.length n'est pas défini car il ne trouve pas le tableau arg

la solution serai d'inclure ton calcul dans une méthode et definir ton tableau avant de lancer ta méthode

Répondre à deceiver@IDN

le problème c'est que j'ai essayer avec une autre fonction qui devait juste afficher "bonjour tout le monde". Dans netbeans ca fonctionne très bien mais dans dos impossible de le lancer.....
c'est bien "java" qu'il faut utiliser ? j'ai essayer avec "javah" mais ca met un autre message d'erreur.... comprends vraiment pô.

Répondre à mousk@IDN

vla la solution :

public class Args {

public static void main(String[] args){
int i;
System.out.println("nombre d'arguments = "+args.length);
for(i=0;i<args.length;i++){
System.out.println("arg["+i+"]= "+args[i]);
}//for
}//main
}//classe


dans public static void main(String[] args) args prend un s, ton erreur était là, après suffit de mettre des s à tous tes args et voila ^^

Répondre à AceB

malheureusement ce n'est pas ça, j'ai essayer avec une fonction contenant seulement:

Code :
  1. System.out.println("bonjour tout le monde" );

et ça ne fonctionne pas. Pourtant il y a bien un "S" a "args" et ca fonctionne dans netbeans...

Répondre à mousk@IDN

tu veux qu'il fasse quoi ton programme exactement ? Et donne un exemple concret

Répondre à AceB

juste une question... ton main prends des args en parametre, et effectivement tu ten sers...
mais dans ta commande java, tu les passe pas en parametre?

Répondre à kicoe

Désolé mais ton petit programme marche tres bien !!!
Je ne voit pas du tout d'erreurs !!!
Je vient de le tester il roule tres bien.

Répondre à thedevilson
Tom's Guide > Forum > Programmation > [Java] message d'erreur lors de l'éxécution
Aller à :

Il y a 2121 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens