有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JavaMail到minecraft

我和我的朋友有minecraft服务器,我们想添加带有Maven的JavaMail插件,我们添加了2个jar文件:

邮件。罐子

激活。罐子

使用此代码:

package com.parlagames;

import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
 import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class App {






public  void AppVoid(String host, String port,final String userName,final String password, String[] toAddress, String subject, String message) {
    Properties props = new Properties();
    props.put("mail.smtp.auth", "true");
    props.put("mail.smtp.starttls.enable", "true");
    props.put("mail.smtp.host", host);
    props.put("mail.smtp.port",port);

    Session session = Session.getInstance(props,
              new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(userName, password);
                }
              });

    try {

        Message SendMessage = new MimeMessage(session);
        SendMessage.setFrom(new InternetAddress(userName)); 
        for(int i=0;i<toAddress.length;i++) {
        SendMessage.setRecipients(Message.RecipientType.TO,
            InternetAddress.parse(toAddress[i]));

        SendMessage.setSubject(subject);
        SendMessage.setContent(message, "text/html; charset=utf-8");


        Transport.send(SendMessage);
        }

        System.out.println("Sent");

    } catch (MessagingException e) {
        throw new RuntimeException(e);



}
}
}

当我们在他的服务器上启动插件时,它会显示一个错误,即它没有识别该类

java.lang.NoClassDefFoundError: com/parlagames/App
    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_161]
    at java.lang.ClassLoader.defineClass(Unknown Source) ~[?:1.8.0_161]
    at java.security.SecureClassLoader.defineClass(Unknown Source) ~[?:1.8.0_161]
    at java.net.URLClassLoader.defineClass(Unknown Source) ~[?:1.8.0_161]
    at java.net.URLClassLoader.access$100(Unknown Source) ~[?:1.8.0_161]
    at java.net.URLClassLoader$1.run(Unknown Source) ~[?:1.8.0_161]
    at java.net.URLClassLoader$1.run(Unknown Source) ~[?:1.8.0_161]
    at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_161]
    at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_161]
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:101) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]

为什么会这样?顺便说一句,我们需要一个专家


共 (1) 个答案

  1. # 1 楼答案

    您似乎需要在插件中添加以下代码:

    public void onEnable()
    

    这个密码呢

    public void onDisable()
    

    你似乎也没有主课。主类在plugin中声明。yml。试着找到显示“main:”的部分,并将其更改为包含“onEnable()”和“onDisable()”的类。正如有人之前所说,也可以添加extends JavaPlugin