webForumDet fria alternativet

kompilering

Javaur Java

5 svar · 386 visningar · startad av pirate

Medlem sedan aug. 200541 inlägg
Frågan#1

Hej.
Jag har fått lite problem när jag ska kompilera i kommando prompten. Kastar ett exception:
Exception in thread "main" java.lang.NoClassDefFoundError: ABC
jag har satt java bin katalogen som miljövariabel och kört i kommando prompten set env CLASSPATH = "sökvägen för java"
och fortfarande samma problem
kör jag JCreator så funkar kompileringen hur bra som helst.

nån som kan ge tips om vad det handlar om ... :q
mvh

Medlem sedan juni 20008 205 inlägg
#2

Släng på ";." sist i din classpath. Det säger åt java att kolla efter klasser i den katalog du står i.

Medlem sedan aug. 20039 340 inlägg
#3

Får du detta fel vid kompilering eller körning?

Medlem sedan aug. 200541 inlägg
#4

funkar ändå inte...
som miljövariabel har jag satt ";" i slutet och som classpath och path har jag också satt dit ";" men det funkar ändå inte...
jag använder mig av jdk1.5.0_5.0\bin

Medlem sedan sep. 2001961 inlägg
#5

pirate skrev:

funkar ändå inte...
som miljövariabel har jag satt ";" i slutet och som classpath och path har jag också satt dit ";" men det funkar ändå inte...
jag använder mig av jdk1.5.0_5.0\bin

Du bör ha det som på engelska kallas "current directory" i class-pathen. Denna symboliseras med en punkt [.].

Alltså bör classpathen se ut något såhär:
CLASSPATH = .;c:\java\jdk1.5_05\lib;f:\dev\common\lib\common.jar

Jag föredrar dock att använda den classpath som definieras av de olika kommandona istället för systemets classpath. Om jag har en struktur som ser ut såhär:
\
\lib\
common.jar
framework.jar
\src\
\bin\

Så ställer jag mig i src-katalogen och kompilerar med:
f:\projA\src > javac -classpath .;../lib/common.jar;../lib/framework.jar -d ../bin *.java

och när jag kör programmet så skriver jag:

f:\projA\bin > java -classpath .;../lib/common.jar;../lib/framework.jar Main

Medlem sedan juni 20008 205 inlägg
#6

pirate skrev:

funkar ändå inte...
som miljövariabel har jag satt ";" i slutet och som classpath och path har jag också satt dit ";" men det funkar ändå inte...
jag använder mig av jdk1.5.0_5.0\bin

Som sagt, det ska vara ";.", inte bara ";".

135 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)