gpt4 book ai didi

java - IntelliJ IDEA 中的 Java 语言级别问题

转载 作者:搜寻专家 更新时间:2023-11-01 02:19:03 24 4
gpt4 key购买 nike

我刚刚开始使用 IntelliJ IDEA 在 Java 中编写具有一些简单功能的 Discord Bot。现在我确实遇到了一个问题,我必须为特定功能使用语言级别 8,但是当我这样做时,它会给我一个错误,之前可以使用的任何东西现在都无法使用。

代码:

package main;
import net.dv8tion.jda.core.AccountType;
import net.dv8tion.jda.core.JDABuilder;
import net.dv8tion.jda.core.entities.Member;
import net.dv8tion.jda.core.events.guild.voice.GuildVoiceJoinEvent;
import net.dv8tion.jda.core.events.message.MessageReceivedEvent;
import net.dv8tion.jda.core.hooks.ListenerAdapter;
import net.dv8tion.jda.core.entities.Role;
import net.dv8tion.jda.core.entities.User;
import java.util.List;
import javax.security.auth.login.LoginException;

public class Main extends ListenerAdapter {

public static void main(String[] args) throws LoginException {
JDABuilder builder = new JDABuilder(AccountType.BOT);

String token = "Token of bot which i dont want to show here";

builder.setToken(token);

builder.addEventListener(new main.Main());

builder.buildAsync();
}

@Override
public void onMessageReceived(MessageReceivedEvent event) {
System.out.println("We received a message from " +
event.getAuthor().getName()+": "+ event.getMessage().getContentDisplay());

if(event.getMessage().getContentRaw().equals("!ping"))
{
event.getChannel().sendMessage("Pong!").queue();
}
}

@Override
public void onGuildVoiceJoin(GuildVoiceJoinEvent event) {
Role role = event.getGuild().getRoleById("575318189467107328");

List<Member> list = event.getGuild().getMembersWithRoles(role);

for (int i = 0; i < list.size(); i++) {
User supporter = list.get(i).getUser();

supporter.openPrivateChannel().queue((channel)->{channel.sendMessage("Jemand braucht Hilfe").queue();});
}
}
}

这是我到目前为止尝试做的。我的问题出现在“supporter.openPrivate ......”这一行中。

我预计当我将项目和模块语言级别更改为 8 时它会起作用,但它给了我这个错误:

Error:java: error: release version 5 not supported

当我不更改语言级别时,它会这样说:语言级别“5”不支持 Lambda 表达式

最佳答案

Maven 使用的默认 Java 版本是 Java 5 (1.5),所以我认为这是您的问题。

确保您拥有适合您尝试使用的语言级别的正确 JDK Java 8 JDK .设置您的环境变量并按照指南执行安装过程。

之后,在您的 Maven 或 Gradle 设置文件(pom.xml 或 build.gradle)中,更改 java 发布版本,如下所示。

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>

检查您的编译器设置:设置/首选项 > 构建、执行、部署 > 编译器 > Java 编译器 > 将特定模块的目标字节码版本更改为 1.8

关于java - IntelliJ IDEA 中的 Java 语言级别问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56025809/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com