Mixins not applied on production


#1

Hello,

I was working on this, it was quite stable so I decided it was time for a release.

From what I understand, Mixins need to be initialized by a Coremod, so I created the coremod and I need to bundle Mixins inside the jar if I want it to work in a sponge-less environment.

Everything seems to work fine, Mixins is launched by forge

However it then suddenly throws an exception

[Server thread/WARN] [FML]: Zip file failed to read properly, it will be ignored
java.lang.RuntimeException: Empty reference 
	at net.minecraftforge.fml.common.versioning.VersionParser.parseVersionReference(VersionParser.java:52) ~[VersionParser.class:?]
	at net.minecraftforge.fml.common.MetadataCollection$ArtifactVersionAdapter.read(MetadataCollection.java:130) ~[MetadataCollection$ArtifactVersionAdapter.class:?]
	at net.minecraftforge.fml.common.MetadataCollection$ArtifactVersionAdapter.read(MetadataCollection.java:118) ~[MetadataCollection$ArtifactVersionAdapter.class:?]
	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:40) ~[TypeAdapterRuntimeTypeWrapper.class:?]
	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:81) ~[CollectionTypeAdapterFactory$Adapter.class:?]
	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:60) ~[CollectionTypeAdapterFactory$Adapter.class:?]
	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:93) ~[ReflectiveTypeAdapterFactory$1.class:?]
	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:172) ~[ReflectiveTypeAdapterFactory$Adapter.class:?]
	at com.google.gson.Gson.fromJson(Gson.java:803) ~[Gson.class:?]
	at com.google.gson.Gson.fromJson(Gson.java:868) ~[Gson.class:?]
	at com.google.gson.Gson.fromJson(Gson.java:841) ~[Gson.class:?]
	at net.minecraftforge.fml.common.MetadataCollection.from(MetadataCollection.java:74) ~[MetadataCollection.class:?]
	at net.minecraftforge.fml.common.discovery.JarDiscoverer.discover(JarDiscoverer.java:63) [JarDiscoverer.class:?]
	at net.minecraftforge.fml.common.discovery.ContainerType.findMods(ContainerType.java:49) [ContainerType.class:?]
	at net.minecraftforge.fml.common.discovery.ModCandidate.explore(ModCandidate.java:78) [ModCandidate.class:?]
	at net.minecraftforge.fml.common.discovery.ModDiscoverer.identifyMods(ModDiscoverer.java:141) [ModDiscoverer.class:?]
	at net.minecraftforge.fml.common.Loader.identifyMods(Loader.java:414) [Loader.class:?]
	at net.minecraftforge.fml.common.Loader.loadMods(Loader.java:554) [Loader.class:?]
	at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:99) [FMLServerHandler.class:?]
	at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:332) [FMLCommonHandler.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) [lh.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) [MinecraftServer.class:?]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]

Mixins are not applied and the main mod is not launched (only the coremod appears in the modlist).

Same thing happens on the client.
I had no luck with the wiki (Mixins repo) or the spongedocs (since the doc is for sponge plugins).

Thanks


#2

If you don’t need a core mod for anything else, you can just add the Mixin tweaker. It looks like you already have that set up, so it should work if you remove the core mod.

I think the cause of this error is the dependencies block in your mcmod.info file. It looks like you don’t have any dependencies, but adding an empty string to it isn’t the way to do that. You can just remove the empty string (leaving it as just dependencies: []) or remove the dependencies block altogether.


#3

Thanks A LOT.

The dependencies block was the issue, I’m gonna blame https://github.com/minecraft-dev/MinecraftDev for that.