# NoClassDefFoundError



## HeX (4. Apr 2012)

Hallo,
soweit ich weis bedeutet dies Exception doch das die jvm die Klasse zur Laufzeit nicht finden kann, aber warum?

Mein Applet läuft ganz Super unter Linux(Ubuntu), nur unter Mac und Windows bringt es diese Exception:


```
Exception in thread "AWT-EventQueue-2" java.lang.NoClassDefFoundError: org/apache/commons/net/ftp/FTPClient
	at GUI.actionPerformed(GUI.java:160)
```


das passiert bei wenn ich nen neuen Thread erzeugen will
	
	
	
	





```
ftp = new JFtp(this);
```

Applet wird in Eclipse geschrieben und einfach Exportiert mit der Apache.Commons Lib
in der erzeugten Jar ist auch alles drin.

auch eine .classpath

[XML]<classpath><classpathentry exported="true" kind="lib" path="lib/commons-net-3.1.jar"><attributes><attribute name="javadoc_location" value="file:/home/hex/Downloads/commons-net-3.1/apidocs/"/><attribute name="org.eclipse.jdt.launching.CLASSPATH_ATTR_LIBRARY_PATH_ENTRY" value="JFtp/lib"/></attributes></classpathentry><classpathentry kind="src" path="src"><attributes><attribute name="org.eclipse.jdt.launching.CLASSPATH_ATTR_LIBRARY_PATH_ENTRY" value="JFtp/lib"/></attributes></classpathentry><classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/><classpathentry kind="output" path="bin"/></classpath>[/XML]


wird diese denn auch immer genutzt?


----------



## L-ectron-X (4. Apr 2012)

Wenn du ein Applet schreibst, muss der Interpeter auch wissen, welche eingebunden Bibliotheken verwendet werden. Abhängigkeiten werden im archive-Attribut des object-Tags (bzw. applet-Tag) aufgelistet. http://www.java-forum.org/applets/114668-java-applet-webseite-einbinden.html
Wie sieht denn dein object-Tag aus?


----------



## HeX (5. Apr 2012)

```
<applet code="GUI.class"  archive="{$args['applet']},{$args['lib']}" name="ftp" width="290" height="180">
				<param name="host" value="{$args['host']}">
				<param name="user" value="$user">
				<param name="password" value="$password">
				<param name="protocol" value="{$args['protocol']}">
			</applet>
```

so funktioniert es! Danke.


----------

