Se connecter avec
S'enregistrer | Connectez-vous

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

Dernière réponse : dans Programmation

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);
}//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

Autres pages sur : java message erreur execution

Lassé par la pub ? Créez un compte

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...

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

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ô.

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);
}//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 ^^
Lassé par la pub ? Créez un compte
Tom's guide dans le monde