Jag har gjort ett program i Eclipse och har försökt exportera det till en jar-fil.
Programmet fungerar utmärkt i eclipse men dubbelklickar jag på den exporterade jar-filen får jag felmeddelandet "Could not find main class. Program will exit."
Försöker jag köra jar-filen från commandoprompten får jag istället felmeddelandet
Exception in thread "main" java.lang.NoClassDefFoundError: windowtabs/TabWindow
Exception in thread "main" java.lang.NoClassDefFoundError: windowtabs/TabWindow
Tyder på att du använder något annat paket, förutom ditt mainprogram. Du måste se till att classpathen är satt när du kör din java. Istället för att dubbelklicka föreslår jag att du från ett kommandofönster kör ungefär följande:
Du får mixtra med classpathen och se vilka beroenden du har. Inifrån Eclipse ser du vilken classpath som används, från (bland annat) projektets propertysida.
Tyder på att du använder något annat paket, förutom ditt mainprogram. Du måste se till att classpathen är satt när du kör din java. Istället för att dubbelklicka föreslår jag att du från ett kommandofönster kör ungefär följande:
Du får mixtra med classpathen och se vilka beroenden du har. Inifrån Eclipse ser du vilken classpath som används, från (bland annat) projektets propertysida.
Nu va ju det här rätt länge sedan men för framtidens skull så vill jag säga att detta är helt fel.
Om java anropas med -jar flaggan så ignoreras -classpath fullständigt.
Nu har jag till och med varit så väluppfostrad så jag har inkluderat mysql drivern i min .jar fil.
Men hur får jag java att förstå det?
Ska väl även tillägga att jag har försökt att sätta CLASSPATH och peka den till en lös mysql-driver.jar utan någon skillnad
Som sagt, även miljövariabeln CLASSPATH ignoreras om du startar ditt program med -jar. Det du får göra är att lägga in Class-Path: sökväg/till/drivern.jar i ditt manifest. T.ex. Class-Path: lib/mysql-jdbc.jar