- 48
- 2
- 9
Знаю, что пару дней назад уже писали с такой же ошибкой, но в моем случае то решение не помогло.
Собственно, выдает ошибку о том, что мне нужно подключить аннотацию
Вот как я отправляю пакет:
Мой
После изменения в
Для разработки использую Eclipse.
Собственно, выдает ошибку о том, что мне нужно подключить аннотацию
@ElegantPacket
для того, чтобы пакер зарегистрировался. Вот код моего пакета, где видно, что аннотация подключена. Суть пакета - спавн сущности пули при выстреле из оружия (пока просто спавн без всяких проверок).
BulletPacket:
@ElegantPacket
public class BulletPacket implements ClientToServerPacket {
@Override
public void onReceive(EntityPlayerMP player) {
if (!CompilationFlag.SERVER) {
return;
}
player.worldObj.spawnEntityInWorld(new EntityBullet(player.worldObj, player, 3.0F, 1.0F, 4));
}
}
Вот как я отправляю пакет:
Java:
BulletPacket packet = new BulletPacket();
packet.sendToServer();
Мой
build.gradle
:
build.gradle:
buildscript {
repositories {
mavenCentral()
maven {
name = "forge"
url = "https://maven.minecraftforge.net/"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath ('com.anatawa12.forge:ForgeGradle:1.2-1.0.+') {
changing = true
}
}
}
plugins {
id 'java-library'
id 'maven-publish'
id 'eclipse'
}
apply plugin: 'forge'
// These settings allow you to choose what version of Java you want to be compatible with. Forge 1.7.10 runs on Java 6 to 8.
sourceCompatibility = 1.6
targetCompatibility = 1.6
version = project.version
group = project.group
minecraft {
version = project.minecraft_version + "-" + project.forge_version
runDir = "run"
}
jar {
manifest {
attributes 'FMLAT': 'thecaribbean_at.cfg'
}
}
dependencies {
compile "io.gitlab.hohserg.elegant.networking:elegant-networking-1.7.10:3.10"
compileOnly "io.gitlab.hohserg.elegant.networking:annotation-processor:3.10"
annotationProcessor "io.gitlab.hohserg.elegant.networking:annotation-processor:3.10"
}
processResources {
// This will ensure that this task is redone when the versions change.
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
// Replace values in only mcmod.info.
filesMatching('mcmod.info') {
// Replace version and mcversion.
expand 'version':project.version, 'mcversion':project.minecraft.version
}
}
// Ensures that the encoding of source files is set to UTF-8, see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
// This task creates a .jar file containing the source code of this mod.
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = "sources"
from sourceSets.main.allSource
}
// This task creates a .jar file containing a deobfuscated version of this mod, for other developers to use in a development environment.
task devJar(type: Jar) {
classifier = "dev"
from sourceSets.main.output
}
// Creates the listed artifacts on building the mod.
artifacts {
archives sourcesJar
archives devJar
}
// This block configures any maven publications you want to make.
publishing {
publications {
mavenJava(MavenPublication) {
// Add any other artifacts here that you would like to publish!
artifact(jar) {
builtBy build
}
artifact(sourcesJar) {
builtBy sourcesJar
}
artifact(devJar) {
builtBy devJar
}
}
}
// This block selects the repositories you want to publish to.
repositories {
// Add the repositories you want to publish to here.
}
}
После изменения в
build.gradle
я выполнил команду gradlew clean setupDecompWorkspace --refresh-dependencies
Для разработки использую Eclipse.
- Краш-лог
-
java.lang.IllegalArgumentException: Packet is not registered: tcguns.packets.BulletPacket. Need to add @ElegantPacket annotation to packet class
at hohserg.elegant.networking.impl.Registry.getPacketId(Registry.java:29) ~[Registry.class:?]
at hohserg.elegant.networking.impl.ForgeNetworkImpl.preparePacket(ForgeNetworkImpl.java:76) ~[ForgeNetworkImpl.class:?]
at hohserg.elegant.networking.impl.ForgeNetworkImpl.sendToServer(ForgeNetworkImpl.java:62) ~[ForgeNetworkImpl.class:?]
at hohserg.elegant.networking.api.ClientToServerPacket.sendToServer(ClientToServerPacket.java:21) ~[ClientToServerPacket.class:?]
at tcguns.handlers.EventsHandler.onMouseInput(EventsHandler.java:69) ~[EventsHandler.class:?]
at cpw.mods.fml.common.eventhandler.ASMEventHandler_8_EventsHandler_onMouseInput_MouseInputEvent.invoke(.dynamic) ~[?:?]
at cpw.mods.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:54) ~[ASMEventHandler.class:?]
at cpw.mods.fml.common.eventhandler.EventBus.post(EventBus.java:140) [EventBus.class:?]
at cpw.mods.fml.common.FMLCommonHandler.fireMouseInput(FMLCommonHandler.java:535) [FMLCommonHandler.class:?]
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1826) [Minecraft.class:?]
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) [Minecraft.class:?]
at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_301]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_301]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_301]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_301]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
at GradleStart.main(Unknown Source) [start/:?]
Краш-лог:
java.lang.IllegalArgumentException: Packet is not registered: tcguns.packets.BulletPacket. Need to add @ElegantPacket annotation to packet class
at hohserg.elegant.networking.impl.Registry.getPacketId(Registry.java:29) ~[Registry.class:?]
at hohserg.elegant.networking.impl.ForgeNetworkImpl.preparePacket(ForgeNetworkImpl.java:76) ~[ForgeNetworkImpl.class:?]
at hohserg.elegant.networking.impl.ForgeNetworkImpl.sendToServer(ForgeNetworkImpl.java:62) ~[ForgeNetworkImpl.class:?]
at hohserg.elegant.networking.api.ClientToServerPacket.sendToServer(ClientToServerPacket.java:21) ~[ClientToServerPacket.class:?]
at tcguns.handlers.EventsHandler.onMouseInput(EventsHandler.java:69) ~[EventsHandler.class:?]
at cpw.mods.fml.common.eventhandler.ASMEventHandler_8_EventsHandler_onMouseInput_MouseInputEvent.invoke(.dynamic) ~[?:?]
at cpw.mods.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:54) ~[ASMEventHandler.class:?]
at cpw.mods.fml.common.eventhandler.EventBus.post(EventBus.java:140) [EventBus.class:?]
at cpw.mods.fml.common.FMLCommonHandler.fireMouseInput(FMLCommonHandler.java:535) [FMLCommonHandler.class:?]
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1826) [Minecraft.class:?]
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) [Minecraft.class:?]
at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_301]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_301]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_301]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_301]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
at GradleStart.main(Unknown Source) [start/:?]