NoSuchMethodError
클래스는 있지만 메서드가 없는 경우: 왜 이것이 항상 버전 불일치인지, 그리고 무엇을 정확히 업데이트해야 하는지 찾는 방법을 설명해요.
업데이트 2026년 8월 13일
java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()Ljava/util/List;
플러그인이 사용 중인 버전에 없는 메서드를 호출합니다. 나중에 추가되었거나 제거된 메서드예요.
의미
거의 항상 버전 불일치 때문입니다.
- 플러그인이 다른 Minecraft 버전용으로 빌드된 경우
- 플러그인이 다른 버전의 의존성(Vault, ProtocolLib, PlaceholderAPI)용으로 빌드된 경우
- 같은 라이브러리의 두 버전이 폴더에 함께 들어 있는 경우
읽는 방법
org.bukkit... — 플러그인이 다른 서버 버전용으로 빌드되었다는 뜻입니다. 라이브러리 패키지 이름이라면, 그것이 업데이트해야 할 대상이에요.
단계
- 플러그인을 서버 버전에 맞는 빌드로 업데이트하세요 — 호환성.
- 패키지 이름이 표시된 의존성을 업데이트하세요.
plugins폴더에 중복된 jar 파일이 있는지 확인하세요(구버전과 신버전이 동시에 있는 경우) — 흔한 원인입니다.- 플러그인이 오랫동안 업데이트되지 않았다면 대안을 찾아보세요. 구버전 API의 메서드는 다시 돌아오지 않습니다.
서버 버전을 변경한 후
이 오류는 Minecraft 버전을 업데이트한 뒤 가장 흔하게 발생합니다. 플러그인은 서버 업데이트 이후가 아니라 함께 업데이트하세요 — 서버 업데이트.
Minecraft 호스팅오프라인일 때도 서버가 실행돼요서버 만들기
