Mails mit JavaMail verschicken

Prengepower

Mitglied
Moin!

Hab hier einen Thread gefunden mit Mailversand mit JavaMail. Hab das in einem seperaten Java-Projekt ausprobiert - funktioniert einwandfrei! Tja jetzt wollte ich das in mein vorhandenes RCP-Project einbauen und siehe da es klappt nicht :(

Hier mal der Fehler:
Code:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: javax/mail/Authenticator
	at de.hwrberlin.jemm.popup.Mail.sendMail(Mail.java:151)
	at de.hwrberlin.jemm.popup.Mail$3.actionPerformed(Mail.java:85)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: javax.mail.Authenticator
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
	... 27 more
 
Hallo,

das sieht für mich so aus, als wäre das Jar-File nicht im Classpath.
Wie nutzt du das Jar-File denn in deinem Projekt?

Gruß

Sascha
 
Bei einer RCP-Anwendung funktioniert sowas nicht. Du musst es im Bundle-Classpath angeben, da ja jedes Bundle/Plugin seinen eigenen Classpath hat.

Schau dir mal die MANIFEST.MF an, dort gibt es einen Tab"Runtime". In diesem Tab gibt es einen Bereich, der sich Classpath nennt.
Dort musst du dein Jar hinzufügen.
Dazu müssen sich die Jars aber in dem Project befinden. Dazu erstellst du am besten in deinem Projekt einen Ordner lib und legst sie dort ab.

Falls du diese Jars in mehreren Plugins/Bundles brauchst, solltest du besser Plugins aus diesen Jars erstellen.

Gruß

Sascha
 
Zurück