/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Fejl igen :-)
Fra : Søren Gørtz Olesen


Dato : 13-11-03 18:52

Hvad skal jeg ændre når jeg får denne fejl?
java.lang.NoClassDefFoundError: Simulator at main.main(Main.java:5)
Exception in thread "main" Process Exit...



Håber på lidt hjlæp

/søren




 
 
Jesper Sørensen (13-11-2003)
Kommentar
Fra : Jesper Sørensen


Dato : 13-11-03 19:08

Søren Gørtz Olesen wrote:
> Hvad skal jeg ændre når jeg får denne fejl?
> java.lang.NoClassDefFoundError: Simulator at main.main(Main.java:5)
> Exception in thread "main" Process Exit...
>
>
>
> Håber på lidt hjlæp
>
> /søren

Hedder din java-fil det samme som din class.
fx
class Test{...} skal ligge i en fil der hedder Test.java

eller er du sikker på at du ikke prøver at oprette et objekt af en type
der ikke eksistere.

mvh
JS

Jesper Sørensen (13-11-2003)
Kommentar
Fra : Jesper Sørensen


Dato : 13-11-03 19:09

Jesper Sørensen wrote:

> Søren Gørtz Olesen wrote:
>
>> Hvad skal jeg ændre når jeg får denne fejl?
>> java.lang.NoClassDefFoundError: Simulator at main.main(Main.java:5)
>> Exception in thread "main" Process Exit...
>>
>>
>>
>> Håber på lidt hjlæp
>>
>> /søren
>
>
> Hedder din java-fil det samme som din class.
> fx
> class Test{...} skal ligge i en fil der hedder Test.java
>
> eller er du sikker på at du ikke prøver at oprette et objekt af en type
> der ikke eksistere.
>
> mvh
> JS
Og hvis det stadig ikke virker må du meget gerne poste source koden med.
Det gælder faktisk altid når du stiller et spørgsmål ang. noget
specifikt du arbejder med.

mvh
JS

Trygleren [9000] (13-11-2003)
Kommentar
Fra : Trygleren [9000]


Dato : 13-11-03 20:03

> Hedder din java-fil det samme som din class.
> fx
> class Test{...} skal ligge i en fil der hedder Test.java

Det ville ikke kaste den exception. Kompileren ville gøre opmærksom på det
specifikke problem.

--
"Sic gorgiamus allos subjectatos nunc"
Med venlig hilsen
Lars 'Trygleren' Winther
www.hesteskelet.dk -- Diametralsk modsætning ophæver tyngdeloven med krav om
forlig


Søren Gørtz Olesen (13-11-2003)
Kommentar
Fra : Søren Gørtz Olesen


Dato : 13-11-03 21:17

Altså, programmet kan godt køres i blueJ.
Jeg oprettetede en Main.java i kawa der skulle starte det hele (gør BlueJ
for en)
Main.java ser sådan ud :

public class main
{
public static void main (String [] arg)
{
Simulator s = new Simulator();
s.runLongSimulation();
}
}

Det hele bliver compilet fint!
>
> eller er du sikker på at du ikke prøver at oprette et objekt af en type
> der ikke eksistere.
>
Ja, men hvordna tjekker jeg det?




Trygleren [9000] (13-11-2003)
Kommentar
Fra : Trygleren [9000]


Dato : 13-11-03 22:03

> > eller er du sikker på at du ikke prøver at oprette et objekt af en type
> > der ikke eksistere.
> >
> Ja, men hvordna tjekker jeg det?

Du ville få en ClassNotFoundException, hvis det var tilfældet.

--
"Sic gorgiamus allos subjectatos nunc"
Med venlig hilsen
Lars 'Trygleren' Winther
www.hesteskelet.dk -- Diametralsk modsætning ophæver tyngdeloven med krav om
forlig


Trygleren [9000] (13-11-2003)
Kommentar
Fra : Trygleren [9000]


Dato : 13-11-03 22:04

> Simulator s = new Simulator();
> s.runLongSimulation();

Det er Simulatorklassen, der er den vigtige her - kan du ikke vise os den?

--
"Sic gorgiamus allos subjectatos nunc"
Med venlig hilsen
Lars 'Trygleren' Winther
www.hesteskelet.dk -- Diametralsk modsætning ophæver tyngdeloven med krav om
forlig


Søren Gørtz Olesen (14-11-2003)
Kommentar
Fra : Søren Gørtz Olesen


Dato : 14-11-03 04:00


"Trygleren [9000]" <HesteskeletSPAM@hesteskeletSPAM.dk> skrev i en
meddelelse news:3fb3f1b6$0$286$edfadb0f@dtext02.news.tele.dk...
> > Simulator s = new Simulator();
> > s.runLongSimulation();
>
> Det er Simulatorklassen, der er den vigtige her - kan du ikke vise os den?
>
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Random;
import java.util.Collections;
import java.util.List;

public class Simulator
{
private static final int DEFAULT_WIDTH = 50;
private static final int DEFAULT_DEPTH = 50;
private List actor;
private List newAnimals;
private Field field;
private Field updatedField;
private int step;
private SimulatorView view;



public Simulator()
{
this(DEFAULT_DEPTH, DEFAULT_WIDTH);
}

public Simulator(int depth, int width)
{
if(width <= 0 || depth <= 0) {
System.out.println("The dimensions must be greater than zero.");
System.out.println("Using default values.");
depth = DEFAULT_DEPTH;
width = DEFAULT_WIDTH;
}
actor = new ArrayList();
newAnimals = new ArrayList();
field = new Field(depth, width);
updatedField = new Field(depth, width);

// Create a view of the state of each location in the field.
view = new SimulatorView(depth, width);

// Setup a valid starting point.
reset();
}

public void runLongSimulation()
{
simulate(500);
}
public void simulate(int numSteps)
{
for(int step = 1; step <= numSteps && view.isViable(field); step++)
{
simulateOneStep();
}
}
public void simulateOneStep()
{
step++;
newAnimals.clear();

// let all animals act
for(Iterator iter = actor.iterator(); iter.hasNext(); ) {
Actor actor = (Actor)iter.next();
if(actor.isAlive()) {
actor.act(field, updatedField, newAnimals);
}
else {
iter.remove(); // remove dead animals from collection
}
}
/*
for(Iterator iter = actor.iterator(); iter.hasNext(); ) {
Actor actor = (Actor)iter.next();
actor.act(field, updatedField, newAnimals);
actor.isAlive();

}
*/

//for(Iterator iter = ac)
// add new born animals to the list of animals
actor.addAll(newAnimals);

// Swap the field and updatedField at the end of the step.
Field temp = field;
field = updatedField;
updatedField = temp;
updatedField.clear();

// display the new field on screen
view.showStatus(step, field);
}

/**
* Reset the simulation to a starting position.
*/
public void reset()
{
step = 0;
actor.clear();
field.clear();
updatedField.clear();
//Kalder den nye klasse med de parametere der er nødvendige for at
få den til at køre!
PopulateGenerator populateGenerator = new PopulateGenerator(field,
actor, view);
// Show the starting state in the view
view.showStatus(step, field);
}

}




Michael K?lling (14-11-2003)
Kommentar
Fra : Michael K?lling


Dato : 14-11-03 12:47

"Søren Gørtz Olesen" <soren_olesen@hotmail.com> wrote in message news:<bp0ot1$dke$1@sunsite.dk>...
> Altså, programmet kan godt køres i blueJ.
> Jeg oprettetede en Main.java i kawa der skulle starte det hele (gør BlueJ
> for en)
> Main.java ser sådan ud :
>
> public class main
> {
> public static void main (String [] arg)
> {
> Simulator s = new Simulator();
> s.runLongSimulation();
> }
> }
>
> Det hele bliver compilet fint!

This may have to do with the fact that your file is called 'Main'
(capital M!) and your class is called 'main' (lowercase M!).

If you are on Windows, the file system is not case sensitive, and the
compiler might not notice. But Java is case sensitive, and would
stumble over this.

Michael

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408921
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste