Problème d'exécution en Java sous Ubuntu

Bonjour à tous ! Etant débutant en Java, je rencontre un soucis très ennuyeux.. En effet, je n'arrive pas à exécuter mon programme. La compilation se passe pourtant bien, mais l'exécution est un fiasco, car le terminal m'affiche :

****@*****-VirtualBox:~/ap12/tp1$ java JeuxDeType
Exception in thread "main" java.lang.NoClassDefFoundError: Program
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:788)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:447)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Caused by: java.lang.ClassNotFoundException: Program
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 13 more

Voici mon programme :
class JeuxDeType extends Program {
void testAddition() {
assertEquals(addition(4,5), 9);
}

int addition(int operande1, int operande2) {
return operande1 + operande2;
}

void testCalculPrixTTC() {
assertEquals(calculPrixTTC(1600, 19.6), 1913.6);
}
double calculPrixTTC(double prixHT, double TVA) {
return prixHT * (1 + TVA/100);
}

void testSaluer() {
assertEquals(saluer("Alan"), "Bonjour Alan");
}
String saluer(String prenom) {
return "Bonjour" + prenom;
}

void testInitiales() {
assertEquals(initiales("Alan", "Turing"), "A.T.");
}

String initiales(String prenom, String nom) {
char initialeDuPrenom = charAt(prenom, 0);
char initialeDuNom = charAt(nom, 0);
String lesInitiales = initialeDuPrenom+"."+initialeDuNom+".";
return lesInitiales;
}
}"

Merci d'avance pour votre aide !!

1 réponse

  1. Modérateur
    Il te faut une méthode
    public static void main(String[] args)
    comme point d'entrée de ton programme.
    1. Contributeur
      Peut être savoir où se trouve Program aussi?
    2. Modérateur
      En effet, je n'avais pas vu que le NoClassDefFoundError portait sur Program, je m'étais uniquement intéressé au
      java JeuxDeType
      .
      En plus cette classe comporte des tests unitaires, il faudra surement ajouter junit.jar dans le classpath (mas celle-ci ne comporte pas de classe Program, c'est donc un autre problème...)