Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [JAVA] Eccezione java.lang.NoClassDefFoundError:

    Ho una piattaforma Java
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
    Java HotSpot(TM) Server VM (build 1.5.0-b64, mixed mode)

    Ed ho i seguenti codici sorgente nel package 'random': è un programmino semplice.

    GR.java
    package random;

    public interface GR
    {
    public double genNext();
    }
    GRUnif01.java
    package random;

    public class GRUnif01 implements GR
    {
    private double seme;
    private long alfa;
    private double modulo;
    private double last;

    public class SeedException extends Exception
    {
    public SeedException () {}
    public SeedException (String str) { super(str); }
    }

    public class LambdaException extends Exception
    {
    public LambdaException () {}
    public LambdaException (String str) { super(str); }
    }

    public GRUnif01(double seed) throws SeedException
    {
    if (seed <= 0) throw new SeedException();
    seme = seed;
    alfa = 16807;
    modulo = 2147483647;
    last = seed;
    }

    public double genNext()
    {
    last = (alfa * last) % modulo;
    return last/modulo;
    }
    }

    GRUnif.java
    package random;

    public class GRUnif extends GRUnif01
    {
    private double a;
    private double b;

    public GRUnif (double seed, double limInf, double limSup) throws SeedException
    {
    super(seed);
    a = limInf;
    b = limSup;
    }

    public double genNext()
    {
    double random0l = super.genNext();
    return a + random0l*(b - a);
    }

    }
    e questo main, contenuto nella classe di prova:
    package random;

    public class prova
    {
    public static void main(String args[])
    {
    try{random.GRUnif grSeme;
    grSeme = new GRUnif(1, 1, 999999999);
    System.out.println(grSeme);
    }catch (Exception e) {System.err.println(e);}
    }
    }
    La compilazione va a buon fine, ma al tentativo di avviare il test... ecco cosa ottengo:

    Exception in thread "main" java.lang.NoClassDefFoundError: prova (wrong name: random/prova)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java :620)
    at java.security.SecureClassLoader.defineClass(Secure ClassLoader.java:124)
    at java.net.URLClassLoader.defineClass(URLClassLoader .java:260)
    at java.net.URLClassLoader.access$100(URLClassLoader. java:56)
    at java.net.URLClassLoader$1.run(URLClassLoader.java: 195)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.j ava:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:3 06)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launche r.java:268)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:2 51)
    at java.lang.ClassLoader.loadClassInternal(ClassLoade r.java:319)


    Perché???

    Grazie a chiunque sappia aiutarmi!
    L.

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Probabilmente lanci l'applicazione usando la sintassi sbagliata o dalla posizione sbagliata.
    La tua applicazione deve essere eseguita dall'esterno della directory "random" in questo modo:
    codice:
    java random.prova
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.