1. Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

[Frage] Library?

Dieses Thema im Forum "Programmierung" wurde erstellt von Sn0wBlizz4rd, 15. Mai 2013.


  1. Sn0wBlizz4rd
    Offline

    Sn0wBlizz4rd

    Registriert seit:
    26. September 2012
    Beiträge:
    418
    Minecraft:
    Sn0wBlizz4rd
    Hallo liebe Suchtis,

    ich hab' da mal ne Frage. Ich lerne gerade noch Java, und bekomme grade eine Sache nicht gebacken;
    Ich versuche die javax.mail.jar zu importieren, um Mails zu versenden. Jedoch habe ich folgendes Problem,
    dass ich beim Start des Plugins einen Error bekomme, siehe hier:
    Code (Text):
    1. 2013-05-15 12:22:23 [SEVERE] Could not load 'plugins\RegisterEmail.jar' in folder 'plugins'
    2. org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException
    3.     at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184)
    4.     at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305)
    5.     at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230)
    6.     at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugins(CraftServer.java:239)
    7.     at org.bukkit.craftbukkit.v1_5_R3.CraftServer.<init>(CraftServer.java:217)
    8.     at net.minecraft.server.v1_5_R3.PlayerList.<init>(PlayerList.java:55)
    9.     at net.minecraft.server.v1_5_R3.DedicatedPlayerList.<init>(SourceFile:11)
    10.     at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:106)
    11.     at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382)
    12.     at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
    13. Caused by: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException
    14.     at java.lang.Class.forName0(Native Method)
    15.     at java.lang.Class.forName(Unknown Source)
    16.     at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173)
    17.     ... 9 more
    18. Caused by: java.lang.ClassNotFoundException: javax.mail.internet.AddressException
    19.     at java.net.URLClassLoader$1.run(Unknown Source)
    20.     at java.net.URLClassLoader$1.run(Unknown Source)
    21.     at java.security.AccessController.doPrivileged(Native Method)
    22.     at java.net.URLClassLoader.findClass(Unknown Source)
    23.     at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80)
    24.     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53)
    25.     at java.lang.ClassLoader.loadClass(Unknown Source)
    26.     at java.lang.ClassLoader.loadClass(Unknown Source)
    27.     ... 12 more

    Das hat was mit dem Build-Path zu tun, der anscheinend falsch ist. Die Jar befindet sich im src-Ordner des
    Plugins, und ich habe sie auch schon importiert genau wie die CraftBukkit.jar. Also möchte ich gerne wissen:
    Warum bekomme ich diesen Error? Warum findet Java die javax.mail.jar nicht? Freue mich auf Antworten,

    euer Cubos.
     
  2. Baba43
    Offline

    Baba43 Ehem. Teammitglied

    Registriert seit:
    5. November 2012
    Beiträge:
    665
    Weil du die notwendigen Klassen auch exportieren musst. Der Fehler besagt, dass die Klasse XY unbekannt ist.
     
  3. games6471
    Online

    games6471

    Zur Laufzeit muss ebenfalls die Libary vorhanden sein und nicht nur während dem Kompileren.
     
  4. Sn0wBlizz4rd
    Offline

    Sn0wBlizz4rd

    Registriert seit:
    26. September 2012
    Beiträge:
    418
    Minecraft:
    Sn0wBlizz4rd
    Ok, danke dir. Ich exportiere so, ist da was falsch dran?:


    [​IMG]

    PS: Wie gesagt befindet sich die Jar IM src Ordner, weshalb sie auch mit-exportiert wird.
     
  5. Cabraca
    Online

    Cabraca

    javax.mail.internet.AddressException gehört zu JavaEE (Enterprise Edition) SDK.
    Dass die in ner normalen Java Installation nicht dabei ist sollte klar sein.
    Da hilft es auch nicht irgendwas in den Buildpath zu packen.
    Nutz am besten einfach Pakete die direkt in java mit dabei sind.
     
  6. Baba43
    Offline

    Baba43 Ehem. Teammitglied

    Registriert seit:
    5. November 2012
    Beiträge:
    665
    Also ich weiß nicht ob es die beste Lösung ist, aber ich mache es so:

    1. Im Serververzeichnis einen Ordner für Bibliotheken anlegen und die jar dort reinkopieren

      [​IMG]

    2. Eine manifest-Datei im Projekt anlegen die folgende Informationen enthält:
      Code (Text):
      1. Manifest-Version: 1.0
      2. Class-Path: ../lib/javax.mail.jar

    3. Diese manifest-Datei auf der 3. Seite beim Exportieren angeben

      [​IMG]
     
  7. Sn0wBlizz4rd
    Offline

    Sn0wBlizz4rd

    Registriert seit:
    26. September 2012
    Beiträge:
    418
    Minecraft:
    Sn0wBlizz4rd
    Daaaaanke! :D Es funktioniert jetzt, ich danke dir sooo sehr! :D