ข้ามไปที่เนื้อหา
แพลตฟอร์ม

ปลั๊กอิน Spigot และ Paper

วิธีได้ปลั๊กอิน Bukkit, Spigot หรือ Paper ที่ดีที่สุดจาก Codexe ด้วย Java หรือ Kotlin สิ่งที่ควรใส่ในคำขอ เวอร์ชัน plugin.yml dependency การบิลด์ และปัญหาที่พบบ่อย

อัปเดตเมื่อ

ในหน้านี้
  1. สิ่งที่ควรใส่ในคำขอ
  2. สิ่งที่ Codexe สร้างให้
  3. เวอร์ชันและ Java
  4. การบิลด์และการตรวจสอบ
  5. การติดตั้ง
  6. ปัญหาที่พบบ่อย

ประเภท Bukkit/Spigot/Paper จะได้ปลั๊กอินเซิร์ฟเวอร์ที่รันบน Paper, Spigot และ fork ต่างๆ ของมัน เลือก Java (โปรเจกต์ Maven) หรือ Kotlin (โปรเจกต์ Gradle ที่มี build.gradle.kts)

ถ้าอยากเล่นปลั๊กอินในเกม ให้เปิดเซิร์ฟเวอร์ทดสอบส่วนตัวด้วยลองเลย

เมื่อคุณส่งคำขอ Codexe จะถามว่าปลั๊กอินนี้สำหรับเวอร์ชัน Minecraft ไหน ตั้งแต่ 1.8.8 ถึง 26.3 โค้ดจะเขียนให้ตรงกับ API และระดับ Java ของเวอร์ชันนั้น และเซิร์ฟเวอร์ทดสอบจะรันเวอร์ชันนั้น โปรเจกต์ที่สร้างก่อนวันที่ 30 กันยายน 2026 จะใช้เวอร์ชันที่เขียนไว้ในไฟล์บิลด์ต่อไป

#สิ่งที่ควรใส่ในคำขอ

  • ซอฟต์แวร์เซิร์ฟเวอร์และเวอร์ชัน: "Paper 1.21.4" หรือ "Spigot 1.20.1" Paper มี API ที่ใหญ่กว่า Spigot โค้ดที่เขียนสำหรับ Spigot รันบน Paper ได้ แต่กลับกันไม่ได้ ถ้าต้องการให้ใช้ได้ทั้งสองแบบ ให้ขอเป็น Spigot
  • คำสั่งพร้อมอาร์กิวเมนต์ ใครใช้ได้ และ tab completion
  • สิทธิ์พร้อมค่าเริ่มต้น (true, op, false)
  • คีย์ใน config.yml ที่คุณอยากให้แก้ได้
  • การจัดเก็บข้อมูล: YAML, SQLite, MySQL หรือในหน่วยความจำ
  • การเชื่อมต่อกับปลั๊กอินอื่น: Vault, PlaceholderAPI, LuckPerms, WorldGuard… ระบุชื่อให้ชัดเจนเพื่อให้ถูกเพิ่มเป็น dependency
Text
A Paper 1.21.4 plugin (Java) called Bounties.
- /bounty set <player> <amount>: takes money via Vault, adds it to the player's bounty.
- Killing a player with a bounty pays it to the killer.
- /bounty top shows the 10 highest bounties.
- Bounties stored in SQLite. Minimum bounty 100 (config.yml).
- Permission bounties.set (default true).
Text
A Paper 1.21.4 plugin in Kotlin called Bounties, same features as above.
Use Kotlin idioms (data classes, extension functions) but keep the Bukkit API usage standard.

#สิ่งที่ Codexe สร้างให้

  • โปรเจกต์ Maven (Java) หรือ Gradle (Kotlin) พร้อม dependency ของ API ที่ถูกต้อง
  • คลาสหลักที่ extend JavaPlugin พร้อมคลาสคำสั่ง listener และการจัดเก็บข้อมูล
  • plugin.yml ที่มีคลาสหลัก api-version คำสั่ง และสิทธิ์ และ config.yml เมื่อมีการตั้งค่า
YAML
name: Bounties
version: 1.0.0
main: eu.codexe.bounties.Bounties
api-version: '1.21'
depend: [Vault]
commands:
  bounty:
    description: Manage bounties
permissions:
  bounties.set:
    default: true

#เวอร์ชันและ Java

Codexe อ่านเวอร์ชัน Minecraft จากไฟล์บิลด์ แล้วบิลด์ด้วย Java 17 (ก่อน 1.20.5) Java 21 (1.20.5 ขึ้นไป) หรือ Java 25 (26.x) ถ้าคุณไม่ระบุเวอร์ชัน จะใช้ API ของ Paper/Spigot 1.20.6

#การบิลด์และการตรวจสอบ

Codexe คอมไพล์ปลั๊กอินก่อนบอกว่าพร้อม และตรวจว่า JAR มีคลาสและ plugin.yml (หรือ paper-plugin.yml) การบิลด์ปลั๊กอินปกติใช้เวลาไม่ถึงนาที ดูคอมไพล์

#การติดตั้ง

ดาวน์โหลด JAR วางไว้ใน plugins/ รีสตาร์ตเซิร์ฟเวอร์ (อย่าใช้ /reload) แล้วดูข้อผิดพลาดในคอนโซลตอนเปิดเซิร์ฟเวอร์

#ปัญหาที่พบบ่อย

อาการสาเหตุที่น่าจะเป็น
ปลั๊กอินไม่โหลด ขึ้นว่า "main class not found"main: ใน plugin.yml ไม่ตรงกับคลาส ขอให้แชตแก้ หรือตรวจหลังเปลี่ยนชื่อเอง
"Unsupported API version" บนเซิร์ฟเวอร์รุ่นเก่าปลั๊กอินใช้ API ที่ใหม่กว่าเซิร์ฟเวอร์ของคุณ ระบุเวอร์ชันเซิร์ฟเวอร์ที่ตรงเป๊ะในคำขอ
คำสั่งไม่ทำอะไรเลยคำสั่งไม่อยู่ใน plugin.yml หรือผู้เล่นไม่มีสิทธิ์
NoClassDefFoundError ของ Vault หรือปลั๊กอินคล้ายกันยังไม่ได้ติดตั้งปลั๊กอินที่เป็น dependency บนเซิร์ฟเวอร์
บิลด์ผ่าน แต่ฟีเจอร์ทำงานผิดอธิบายสิ่งที่เกิดขึ้นในเกมให้ตรงที่สุดในแชต การตรวจสอบเช็กการบิลด์ ไม่ได้เช็กการเล่น
ปลั๊กอิน Spigot และ Paper | Codexe Docs