[精讚] [會員登入]
802

【JDA/discord bot】package does not exist fix

JDA 4.0 和 5.0 差別還是很大的

分享此文連結 //n.sfs.tw/16347

分享連結 【JDA/discord bot】package does not exist fix@小編過路君子
(文章歡迎轉載,務必尊重版權註明連結來源)
2024-02-12 23:09:29 最後編修
2024-02-06 05:47:58 By 過路君子
 

哈囉大家好,這裡是最近一直遇到問題的小編過路君子

一波未平一波又起,一會兒服務出問題、一會兒虛擬機出問題、再一會兒網路出問題......

 

 

今天小編在使用 JDA 5.0 的時候,因為需要呼叫到 TextChannel 這一個類別。

想當然爾,就是找到相關的 javadoc 頁面之後並依照相關的指示 import net.dv8tion.jda.api.entities.channel.concrete.TextChannel。

但竟然吃到了以下的錯誤:

[ERROR] /home/user/discordBot/src/main/java/xxx.java:[12,53] package net.dv8tion.jda.api.entities.channel.concrete does not exist

其了怪了,小編緊接著檢查自己的 pom.xml 配置(部分):

<dependency>
    <groupId>net.dv8tion</groupId>
    <artifactId>JDA</artifactId>
    <version>5.0.0-alpha.20</version>
</dependency>

確認是使用 JDA 5.0 而非 JDA 4.0。

那怎麼會報這樣的錯誤,小編實在是百思不得其解,javadoc 這個網站應該不會騙人才對。

後來發現是小編自己的 pom.xml 忘記寫 repository 來源了,補上並刪除原本在 m2 內的檔案之後就正常了。

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>net.dv8tion</groupId>
        <artifactId>JDA</artifactId>
        <version>5.0.0-alpha.20</version>
    </dependency>
</dependencies>

記得要將原本 m2 內的檔案刪除!

 

在更新完成 pom.xml 之後,小編反而吃到另一種錯誤,以下:

[ERROR] /home/user/discordBot/src/main/java/xxx.java:[5,36] cannot find symbol
[ERROR]   symbol:   class TextChannel
[ERROR]   location: package net.dv8tion.jda.api.entities

這剛好就是 JDA 4.0 和 JDA 5.0 的差別,不少的類別被重新歸類到不同的地方。

以 TextChannel 來說,就是從 net.dv8tion.jda.api.entities 下被改至了 net.dv8tion.jda.api.entities.channel.concrete下。

 

 

 

後記

雖然目前 JDA 5.0 仍然是 alpha 的階段,但小編還是決定挑戰看看,直接用 JDA 5.0 來更新自己的 discord 機器人。

這算是小編的 discord 機器人三年來的一次大更新,之前就很想更新了,只是一直犯懶,現在總算是抓到時間了呢~
一直有在關注小編的話,應該知道小編舊的 discord 機器人是用什麼語言寫的吧!

END

你可能感興趣的文章

【Java】(Project Valhalla)關於Java未來重大的變革 讓 Java 再次偉大!Make Java Great Again!

【Stable Diffusion web UI】[AI 作畫](Linux)無 NVIDIA 顯卡之伺服器運行測試 凡事就是要試試看,才知道最後的結果

【Python3】11 - 字典(Dictionary)的使用範例 python3的幾個字典使用範例,改寫自他人perl的範例

【C++】SFML安裝於Microsoft Visual Studio 2019 此方法僅適用單個C++專案,因為一次就適用整台電腦的方式有人寫了,而且寫得非常不錯。

【Arduino/LinkIt 7697】實作小小的 MQTT Publish & Subscribe 若是要多點對多點傳輸資料,那使用 MQTT 即可快速的達成我們所需的目的

【Maven】如何創建一個簡單可執行的JAR檔 滿重要的一個小功能,畢竟有時候是要傳遞的是JAR檔,而不是直接透過Maven直接部屬之類的

隨機好文

高捷少女:地下城的探險少女④ 耐耐突然抖了一下。「妳們聽到了嗎?」她說。「聽到什麼?」婕兒問。「那個腳步聲啊!」耐耐嚥了一下喉嚨,覺得有些害怕。「有一陣腳步聲經過,很小聲,但我還是聽到了。』「妳聽錯了吧……等等!」婕兒使終維持著將

【歌評】蓮台野夜行 -古の冥界寺 古老的冥界寺 冥界?那是什麼地方?該不會是像地獄那樣的地方吧?!

【英翻中歌詞】(二創歌)妖精大戰爭 ~Fairy Wars 妖精大戦争 ~Fairy Wars Star light… star bright… 星光閃耀...星輝熠熠... We’re the three brightest stars in the sky tonight! 我們是今晚

【感想】蓮台野夜行 - 東方妖妖夢 東方妖々夢 ~Ancient Temple 再撰 一首歌聽一遍跟聽100遍是一樣的,但是,今天聽跟明天再聽感覺絕對會不一樣。

【國文】虬髯客傳 大綱② (無本文、無翻譯) (續上篇筆記) 上篇小編有說要單獨拉出來討論的是這四個成語,分別是: 顧盼暐如——目光流轉,神采