Could not pass FMLConstructionEvent to Plugin

Someone here who speaks Java, can i get a user level explanation what this means and IF the bug is in the plugin, sponge version “beta / alpha” or forge, or all 3?

https://paste.ee/p/vwPbs

The message you’re seeing is called a stack trace. It is essentially a printout showing where an exception occurred in a program, and while it can be really helpful for finding an issue and knowing why something crashed it isn’t always enough to know what caused that exception in the first place, as it may be the result of an action done a while ago that is only causing issues now.

There are four main parts to the stack trace (or at least, that’s how I look at it). The first is the type of exception, followed shortly after by the second piece being the message.

java.lang.AssertionError: assertion failed

In this case, our exception is java.lang.AssertionError and the message is assertion failed, which isn’t really specific. However, that’s where the next piece comes in handy, which is the ‘actual’ stack trace and contains the information about where this exception occurred. In this case, we have:

    at io.github.katrix.katlib.shade.scala.Predef$.assert(Predef.scala:204) ~[Predef$.class:2.3.1]
    at io.github.katrix.homesweethome.HomeSweetHome$.<init>(HomeSweetHome.scala:53) ~[HomeSweetHome$.class:2.2.0]

This points at the plugin HomeSweetHome as being a potential cause of the issue, and with some searching that appears to be the case as shown here. By the looks of it this is caused by some versioning issues, but the only person who can confirm that and know why is @Katrix.

For the sake of completeness, the final piece of a stack trace is a series of causes, which are in themselves stack traces. These are shown when an exception is caused by another exception, which might look something like this:

Caused by: java.lang.NullPointerException
    at my.uncreative.package.name.MyClass.myMethod(MyClass.java:42) ~[MyClass.class:1.0.0]

Which basically says that whatever issue happened was caused by a NullPointerException in MyClass.java at line 42. There can be more than one of these, so the most relevant is generally the bottom one.

Anyways, hopefully that isn’t too much information for you. At least now you’ll be able to identify a stack trace if you need one xD

2 Likes

Definitely a versioning issue. I’ve gone and fixed the problem and released 2.2.1 on Ore which should have the error fixed. The error only affected API 7, so everything else should be fine.

1 Like