Executer un .class en java?

phifou -  
 Le-DOC -
salut à tous,
je programme depuis peu en java avec Jcreator et j'aurais une p'tite question. Lorsqu'on compile les fichiers sources, le logiciel crée des fichier .class. Normal. Puis lorqu'on clique sur execute avec Jcreator, ceux ci s'executent tres bien. Normal aussi.
Mais j'aimerais pouvoir executer mes fichiers .class sans passer par Jcreator, et la, je n'y arrive pas. Comment faire? Dans mon livre, ils disent de taper : java nomfichier dans une fenetre DOS. Mais ca marche pas, ca m'indique:
Exeption in thread "main" java.lang.NoClassDefFoundError : nomfichier
Quelqu'un peut il m'aider?

9 réponses

  1. philtrain
     
    Bonjour,
    il faut indiquer à la jvm le chemin des classes par l'option -classpath, par exemple si j'ai ma classe principale (celle qui contient la méthode main) dans le répertoire
    /home/user/java/projet/package/classes/ClassePrincipale.class, j'écrirai pour exécuter le programme:

    $java -classpath /home/user/java/package/classe package.ClassePrincipale

    pour avoir les détails, on peut taper: java -help

    Tout cela se trouve bien expliqué dans la documentation sur le site de sun:
    http://java.sun.com

    a+ et bon courage
    8
  2. Jolkdarr
     
    Hello !

    Exemple :

    fichiers : classe_x.class, classe_y.class, classe_z.class
    commande :
    java classe_x

    En complétant la variable CLASSPATH si nécessaire, il faut entrer java + nom de la classe principale (pas le nom du fichier).

    Take care !
    3
  3. philtrain
     
    Il suffit d'archiver votre application au format .jar exécutable.

    En gros, on archive les classes en y ajoutant un fichier "manifest" indiquant ou se trouve la classe principale:
    Main-Class: package.MaClasse

    Ceci permet d'avoir un fichier exécutable qui va fonctionner tant sur un environnement windows (tel un .exe) que sous autre un environnement (linux, mac os, qnx, ...).

    Toute la doc se trouve ici
    http://java.sun.com/docs/books/tutorial/jar/
    3
  4. phifou
     
    ok merci,
    mais avant je programmais en C. Et lorsque je voulais envoyer par mail une application à un copain je n'avais qu'a envoyer le fichier .exe, il n'avait qu'a double cliquer dessus et ca l'executait.

    maintenant je voudrais lui envoyer une application que j'ai faite faite en java. Il faudra qu'il fasse toute cette manip avec mes fichiers .class pour excuter? c compliqué, il n'y a pas plus simple? moi j'aimerais qu'il double clique sur un fichier pour l'excuter, est ce possible?
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. blux Messages postés 2051 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Ben non, tu lui envoies une page html (avec l'appel à l'applet) + un fichier .class.

    Il lui suffit de copier la page + le .class au même endroit et de cliquer sur le .html...

    Ou alors j'ai pas compris ta question et il faut un moteur d'applet...

    A+ Blux
     "Les cons, ça ose tout.
    C'est même à ça qu'on les reconnait"
    0
  7. bosstkd
     
    bon salut pour exécuté ton fichier .class il faux déclaré la variable d'environnement tu va vers ton poste de travail\afficher les informations système\Avancé. puis tu clic sur variable d'environnement tu ajoute variable utilisateur :
    nom de la variable : CLASS
    valeur de la variable: ;.
    puis variable système
    nom de la variable : java
    valeur de la variable : c:\programme files\java\jdk1.6.0_11\bin
    par exemple j'ajoute qu'il te faux le jdk bien sur
    bonne chance
    0
  8. Le-DOC
     
    Tu crée un petit script, ou racourcis qui fait java <nom de ta class principale>
    0
  9. Jolkdarr
     
    Hello !

    C'est possible oui mais il faut que ton environnement de développement compile ton appilcation Java en code natif et non en bytecode (.class). Tu obtiendras une application "standalone" qui s'utilise comme un exécutable classique écrit en C par exemple.

    Consulte la documentation de ton outil de développement pour savoir.

    Take care !
    -1
  10. aish
     
    essia d'utiliser JTamaE qui permet de lancer un class java avec de 2 click sur la class.
    te peut telecharge JTamaE de le site telecharge.net gratuitement .
    -1