【问题标题】:Compiling Java/gradle discord bot编译 Java/gradle discord bot
【发布时间】:2026-02-06 11:30:01
【问题描述】:

我有一个用 Java 和 Gradle 编码的不和谐机器人,我需要找到如何让它工作。 我问机器人的主人,他回答我: “./gradlew shadowJar” 这是什么意思? 我需要做什么才能让机器人工作?

我已经尝试在 jar 中编译 java 文件,我尝试制作清单但无法制作类。

我尝试的只是:

javac Bot.java

-> 没用,错误:包 ch.qos.logback.classic 不存在

jar cvfm Bot.jar MANIFEST.MF server handlers commons commands audio

-> 制作了一个不做任何事情的 .jar 文件

jar tf Bot.jar

-> 不知道这是做什么的,但没有错误

java -jar Bot.jar

-> 错误:bot.jar 中没有主要清单属性

它应该创建一个 jar 文件,让机器人工作,但它只会产生错误或无法工作的文件。

有人可以帮我让这个机器人工作吗?

【问题讨论】:

  • 他告诉你运行的确切命令。运行它。
  • ./gradlew shadowJar 只是一种运行可执行文件的 UNIX 方式。在 Windows 中,您只需键入 gradlew shadowJar

标签: java gradle bots discord


【解决方案1】:

首先你需要了解 gradle 和 gradlew 的区别。请参阅下面的 * 链接。 Difference between using gradlew and gradle。此外,如果您有完整的项目以及 gradle 结构,请转到指向包含该项目的现有文件夹的命令提示符并运行以下命令。

gradlew clean build

【讨论】:

  • 它不起作用,错误:pastebin.com/raw/D4BBEg3u |它说我需要安装 JDK,但 JDK 已安装在我的计算机上。
  • 首先检查java home。打开 cmd 提示符并输入 java
  • 我将我的 JAVA_HOME 设置为正确的路径(JDK 安装),并将其添加到 PATH 中,但它仍然不起作用,但错误不同:Compilation failed; see the compiler error output for details. |但我其实不知道编译器输出在哪里。
  • 在文件中发现了一个logback.xml,不知道能不能帮到你:pastebin.com/raw/g7zALt8T
  • logback.xml 文件与编译无关。您可以使用我提供的命令构建项目吗?