webForumDet fria alternativet

Ett enkelt Hello World, men fel ändå!

Java

9 svar · 373 visningar · startad av nitro2k01

Medlem sedan aug. 20039 340 inlägg
Frågan#1
public class Test1{
	public static void main (String args[]){
		System.out.println("Tjena jordklot!");
	}
}

Detta borde köra fint, men det gör det inte!
Det går bra att kompilera, men att köra det ger Exception in thread "main" java.lang.NoClassDefFoundError: Test1. Vad tusan är fel??
Filerna heter Test1.java resp. Test1.class med stor bokstav i början och jag står i rätt katalog vid prompten. Vad mer kan vara fel?

Medlem sedan nov. 20022 355 inlägg
#2

Du får kolla så att din CLASSPATH är satt rätt :)

Medlem sedan aug. 20039 340 inlägg
#3

Var ska den peka då? Pekade på d:\winnt\system32\qtjava.zip, en fil som inte ens finns. Antar att det har något med quicktime att göra.

Medlem sedan juni 20015 009 inlägg
#4

/r jag som är blind... :r

Medlem sedan aug. 20039 340 inlägg
#5

/r Qimen som är blind :r

Medlem sedan aug. 20021 752 inlägg
#6

Felet beror på att du inte har "current directory" i din classpath, lägg till ./ i din classpath så kommer det att fungera.

/Viktor

Medlem sedan aug. 20039 340 inlägg
#7
H:\javaproj\Test1>set CLASSPATH=./

H:\javaproj\Test1>java Test1
Tjena jordklot!

H:\javaproj\Test1>

Jaha, det gick ju bra... Men borde inte CLASSPATH vara rätt satt från början?

Medlem sedan juni 20031 837 inlägg
#8

hmm ska inte main functionen ligga utanför klassen?


public class Test1
{
	public Test1()
	{
		System.out.println("Tjena jordklot!");
	}
}

public static void main(String args[])
{
	Test1 mitt_objekt = new Test1();
}

eller utan klass.

public static void main(String args[])
{
	System.out.println("Tjena jordklot!");
}

var ett litet tag sedan jag lekta med java så jag är inte helt säker på att det fugnerar så här. Testade inte koden utan skrev det bara rakt ner.

Säg till om det inte fungerar så får jag testa på min dator.

Medlem sedan nov. 20022 355 inlägg
#9

The_Hulk skrev:

hmm ska inte main functionen ligga utanför klassen?

Nope, koden är korrekt!

Medlem sedan aug. 20021 752 inlägg
#10

nitro2k01 skrev:

Jaha, det gick ju bra... Men borde inte CLASSPATH vara rätt satt från början?

Du som utvecklare ansvarar helt för classpath, Java sätter den aldrig utan läser bara av vad som står där.

The_Hulk skrev:

hmm ska inte main functionen ligga utanför klassen?

Du tänker nog på C++ där ska main funktionen ligga utanför klassen :)

/Viktor

270 ms totalt · 4 externa anrop · v20260731065814-full.868a69e5
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)