I just started to learn paper and Kotlin, and i have a problem with my plugin. Every time I right-click, I see java.lang.NoClassDefFoundError. I can't find what the problem is, can you please help me? Thank you in advance!
src/main/kotlin/org.example.tutorial:
package org.example.tutorial
import org.bukkit.Material
import org.bukkit.entity.Fireball
import org.bukkit.event.EventHandler
import org.bukkit.event.Listener
import org.bukkit.event.player.PlayerInteractEvent
import org.bukkit.plugin.java.JavaPlugin
class TutorialPlugin : JavaPlugin(), Listener {
override fun onEnable() {
logger.info("Enabled TutorialPlugin")
server.pluginManager.registerEvents(this, this)
}
@EventHandler
fun shootFireball(event: PlayerInteractEvent) {
val action = event.action.isRightClick
val item = event.item
val player = event.player
if (action && item != null && item.type == Material.IRON_SWORD) {
val fireball = player.launchProjectile(Fireball::class.java)
fireball.velocity = player.location.direction.multiply(5)
}
}
}
build.gradle.kts:
plugins {
kotlin("jvm") version "1.5.31"
}
group = "org.example"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
maven("https://papermc.io/repo/repository/maven-public/")
}
dependencies {
compileOnly("io.papermc.paper:paper-api:1.17.1-R0.1-SNAPSHOT")
implementation("org.jetbrains.kotlin:kotlin-stdlib:1.5.31")
}
tasks {
processResources {
filesMatching("**/*.yml") {
expand(project.properties)
}
}
withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile::class) {
kotlinOptions {
jvmTarget = "16"
}
}
}
the error:
java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
at org.example.tutorial.TutorialPlugin.shootFireball(TutorialPlugin.kt) ~[untitled-1.0-SNAPSHOT.jar:?]
at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1.execute(Unknown Source) ~[?:?]
at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.17.1.jar:git-Paper-300]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:626) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.craftbukkit.v1_17_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:543) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.craftbukkit.v1_17_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:506) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.craftbukkit.v1_17_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:501) ~[patched_1.17.1.jar:git-Paper-300]
at org.bukkit.craftbukkit.v1_17_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:497) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItem(ServerGamePacketListenerImpl.java:1862) ~[app:?]
at net.minecraft.network.protocol.game.ServerboundUseItemPacket.handle(ServerboundUseItemPacket.java:28) ~[app:?]
at net.minecraft.network.protocol.game.ServerboundUseItemPacket.handle(ServerboundUseItemPacket.java:8) ~[app:?]
at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:56) ~[app:?]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:149) ~[app:?]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[app:?]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1418) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.server.MinecraftServer.shouldRun(MinecraftServer.java:192) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[app:?]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1396) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1389) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[app:?]
at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1367) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1278) ~[patched_1.17.1.jar:git-Paper-300]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[patched_1.17.1.jar:git-Paper-300]
at java.lang.Thread.run(Thread.java:831) ~[?:?]