Att du satt sökvägen till kompilatorn verkar ju stämma eftersom du får ett svar från kompilatorn ;)
Har du satt classpath till mappen med dina filer?
10 svar · 366 visningar · startad av NoMaster
Jag kan kompilera i eclipse-editorn, men när jag försöker köra via kommandoraden står det
Exeption in thread "main" java.lang.NoClassDefFoundError: C:\HelloWorld
Jag har angett sökvägen till bin-mappen i miljövariabler Path (;C:\j2sdk1.4.1_03\bin) till mappen där javac och java.exe finns..
Att du satt sökvägen till kompilatorn verkar ju stämma eftersom du får ett svar från kompilatorn ;)
Har du satt classpath till mappen med dina filer?
Haha, ja det har du ju rätt i, dessutom går det att kompilera märkte jag nu.(får i alla fall inget felmess då) Vad som inte går är att köra filen via kommandoraden(java HelloWorld). Kan du förklara hur jag gör det där med classpath, för det har jag inte gjort? :)
Se till att du har stavat klassen med main-metoden likadant som du har stavat filnamnet. Man brukar få NoClassDefFound-messet då.
Nu var det ett tag sedan jag körde ett javaprogg på det sättet, men har för mig att du helt enkelt skriver "set classpath = ." i den katalog filerna ligger. ( Kanske bara var "set path = .") ... Någon som vet med färskare minne kanske kan rätta mig... :)
Testa, om inte annat.
Nä, ska man ändra classpathen:
set CLASSPATH=%CLASSPATH%;.
Ska man bara lägga till för kompileringen/körningen:
$ javac -c%CLASSPATH%;. MinKlass.java
---
$ java -c%CLASSPATH;. MinKlass
Eftersom jag just börjat glutta på java känns det lite enklare med dom första stegen att kompilera via tolken.
Koden i HelloWorld.java:
public class HelloWorld {
public static void main (String[] arg) {
System.out.println("Det funkar");
}
}
Som jag kompilerar med raden:
javac H:\_JAVA\HelloWorld\HelloWorld.java
funkar
men..
java H:\_JAVA\HelloWorld\HelloWorld
funkar däremot inte..då får jag felmesset.
Kör W2k, och läste mig till att man skulle lägga till "ny" systemvariabel under "miljövariabler" och skriva in "CLASSPATH" och där lägga in
.;c:\filer
som sträng. Men vad är det för filer man ska länka till?
SPiN, verkar inte funka, men jag gör säkert fel:/
Nu funkar det, stod i fel mapp :r
Men vad är det för filer man ska länka till?
:i
Dina körbara filer som du vill köra.
Det var det som mitt förslag gör. Dvs om man lokalt sätter classpath till "." i den mappen man har sina ***.class som man vill köra. Det jag är osäker på är den exakta syntaxen som ska till.
red:
Bra att det fungerar nu :)
Ok, tackar, nu kan jag i alla fall kompilera och köra helloworld, men jag tänkte prova att köra en .bat-variant när jag ändå håller på..
Återkommer med frågor om det.