개인 자료란 (JE)

  서버 커뮤니티

Profile Plain 대표칭호 없음
Profile

질문하기 Java

[해결완료]플러그인이 인식되지 않는 문제 질문드립니다.

2021.01.27 조회 수 1650 추천 수 0
이해도 플러그인 
게임버전 (JE) 버킷 

플러그인에 입문한지 며칠밖에 안됀 뉴비입니다...

IDE는 IntelliJ Community 2020.3월 버전 쓰고 있고요

플러그인 적용하려는 서버는 Paper 1.16.4 버킷입니다.


분명 IntelliJ  프로그램 상에서는 빨간줄이나 오류가 하나도 없었는데

실제로 plugin 폴더에 넣고 돌리기만 하면 계속 오류가 나네요.ㅠㅠ


<버킷 오류뜬 사진>80a0ecec29264215602782446a96485b.PNG581c3e8d643ad9165dc6b015320f2d3f.PNG

[18:53:29 ERROR]: Could not load 'plugins\WelcomePlugin v1.4.jar' in folder 'plugins'

org.bukkit.plugin.InvalidPluginException: Cannot find main class `io.plain.Main'

         at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:81) ~[patched_1.16.4.jar:git-Paper-416]

         at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:137) ~[patched_1.16.4.jar:git-Paper-416]

         at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:397) ~[patched_1.16.4.jar:git-Paper-416]

         at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:305) ~[patched_1.16.4.jar:git-Paper-416]

         at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:389) ~[patched_1.16.4.jar:git-Paper-416]

         at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:206) ~[patched_1.16.4.jar:git-Paper-416]

         at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:935) ~[patched_1.16.4.jar:git-Paper-416]

         at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:173) ~[patched_1.16.4.jar:git-Paper-416]

         at java.lang.Thread.run(Thread.java:832) [?:?]

Caused by: java.lang.ClassNotFoundException: io.plain.Main

         at java.net.URLClassLoader.findClass(URLClassLoader.java:435) ~[?:?]

         at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:182) ~[patched_1.16.4.jar:git-Paper-416]

         at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:111) ~[patched_1.16.4.jar:git-Paper-416]

         at java.lang.ClassLoader.loadClass(ClassLoader.java:589) ~[?:?]

         at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]

         at java.lang.Class.forName0(Native Method) ~[?:?]

         at java.lang.Class.forName(Class.java:468) ~[?:?]

         at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:79) ~[patched_1.16.4.jar:git-Paper-416]

         ... 8 more



플러그인 코드는 아래와 같습니다.

<Main 클래스>

package io.plain;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin {

    ConsoleCommandSender console = Bukkit.getConsoleSender();

    @Override
    public void onEnable() {
        console.sendMessage(ChatColor.AQUA+"[Plain 입장 플러그인이 활성화 중입니다.]");
        getServer().getPluginManager().registerEvents(new EventManager(), this);
    }

    @Override
    public void onDisable() {
        console.sendMessage(ChatColor.AQUA+"[Plain 입장 플러그인이 비활성화 중입니다.}");
    }

}

<EventManager 클래스>

package io.plain;

import org.bukkit.ChatColor;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class EventManager implements Listener {

    @EventHandler
    public void join(PlayerJoinEvent e) {
        e.setJoinMessage(ChatColor.LIGHT_PURPLE+e.getPlayer().getName()+"님이 서버에 입장하셨습니다.");
        e.getPlayer().sendTitle ("서버에 오신것을 환영합니다!", e.getPlayer().getName()+"님, 오늘도 즐거운 시간 되세요~", -1, -1, -1);
    }

}

<plugin.yml>

name: WelcomePlugin
version: 1.4
main: io.plain.Main
api-version: 1.16
description: Plain 입장 플러그인입니다.


2시간 동안 뚫어져라 코드 쳐다보면서 고민해보았지만... 도통 뭐가 문젠지 알수가 없었습니다. 

대체 어느 부분이 잘못되어서 플러그인이 인식되지 않는건지 알려주셨으면 좋겠습니다.




+얼레ㅋㅋㅋ... 왠지는 모르겠지만 1시간 쉬고 돌아와서 해당 플러그인 1개만 띄워놓고 재빌드해보니

막힘없이 잘 돌아가네요.ㅎㅎ

알아보니까 이유는 몰라도, 이전 jar 파일들에 plugin.yml 파일만 저장되고 나머지 클래스들은 싹 다 저장이 안되어서 발생한 문제였네요.

디스코드 질문방에서 답변해주신 분들 모두 감사드립니다!


Warning
댓글이 없습니다.

새로운 댓글을 등록해 주세요!