[CODE lang="java" title="Main.class" highlight="17, 18, 19, 20"]package core;
import net.dv8tion.jda.api.JDABuilder;
import net.dv8tion.jda.api.entities.Activity;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.MessageChannel;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
import net.dv8tion.jda.api.requests.GatewayIntent;
import javax.security.auth.login.LoginException;
public class Main extends ListenerAdapter
{
public static void main(String[] args) throws LoginException
{
args[0] = "Nzk3NTk1OTM2NzAzNTEyNjI2.X_oxGQ.cwlWFZ4MY4in8cTaRVwswGMW1Ko";
if (args.length <= 1) {
System.exit(1);
}
JDABuilder.createLight(args[0], GatewayIntent.GUILD_MESSAGES, GatewayIntent.DIRECT_MESSAGES)
.addEventListeners(new Main())
.setActivity(Activity.playing("Type !ping"))
.build();
}
@Override
public void onMessageReceived(MessageReceivedEvent event)
{
Message msg = event.getMessage();
if (msg.getContentRaw().equals("!ping"))
{
MessageChannel channel = event.getChannel();
long time = System.currentTimeMillis();
channel.sendMessage("Pong!") /* => RestAction<Message> */
.queue(response /* => Message */ -> {
response.editMessageFormat("Pong: %d ms", System.currentTimeMillis() - time).queue();
});
}
}
}
[/CODE]
In args[0] muss der token. Bloß, wenn Ich das Programm ausführe kommt die Fehlermeldung:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
at core.Main.main(Main.java:17)
import net.dv8tion.jda.api.JDABuilder;
import net.dv8tion.jda.api.entities.Activity;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.MessageChannel;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
import net.dv8tion.jda.api.requests.GatewayIntent;
import javax.security.auth.login.LoginException;
public class Main extends ListenerAdapter
{
public static void main(String[] args) throws LoginException
{
args[0] = "Nzk3NTk1OTM2NzAzNTEyNjI2.X_oxGQ.cwlWFZ4MY4in8cTaRVwswGMW1Ko";
if (args.length <= 1) {
System.exit(1);
}
JDABuilder.createLight(args[0], GatewayIntent.GUILD_MESSAGES, GatewayIntent.DIRECT_MESSAGES)
.addEventListeners(new Main())
.setActivity(Activity.playing("Type !ping"))
.build();
}
@Override
public void onMessageReceived(MessageReceivedEvent event)
{
Message msg = event.getMessage();
if (msg.getContentRaw().equals("!ping"))
{
MessageChannel channel = event.getChannel();
long time = System.currentTimeMillis();
channel.sendMessage("Pong!") /* => RestAction<Message> */
.queue(response /* => Message */ -> {
response.editMessageFormat("Pong: %d ms", System.currentTimeMillis() - time).queue();
});
}
}
}
[/CODE]
In args[0] muss der token. Bloß, wenn Ich das Programm ausführe kommt die Fehlermeldung:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
at core.Main.main(Main.java:17)