Project-Cepi / Sabre

Sabre is a configurable server jar for Minestom
MIT License
26 stars 2 forks source link

Sabre cannot make use of external dependencies #2

Closed Geolykt closed 3 years ago

Geolykt commented 3 years ago

I got no idea how to fix that issue nor what It's actually causing it, but I hope you have a better idea.

Server version: 1.1.0 (aff16a9a4344c0c5b403ad22f4c3303e841b89b4) OS: GNU/Linux (Fedora 33) Java: openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment 18.9 (build 11.0.9.1+1) OpenJDK 64-Bit Server VM 18.9 (build 11.0.9.1+1, mixed mode, sharing) java-11-openjdk-1:11.0.9.11-4.fc33.x86_64

Stacktrace:

java.lang.UnsupportedOperationException: No format processor for org.jboss.shrinkwrap.resolver.api.maven.MavenResolvedArtifact was found. Supported processors are: class org.jboss.shrinkwrap.resolver.impl.maven.archive.ArchiveFormatProcessor
    at org.jboss.shrinkwrap.resolver.spi.format.FormatProcessors.find(FormatProcessors.java:53) ~[sabre-0.1.1-all.jar:?]
    at org.jboss.shrinkwrap.resolver.impl.maven.MavenFormatStageImpl.as(MavenFormatStageImpl.java:84) ~[sabre-0.1.1-all.jar:?]
    at org.jboss.shrinkwrap.resolver.impl.maven.MavenFormatStageImpl.asResolvedArtifact(MavenFormatStageImpl.java:71) ~[sabre-0.1.1-all.jar:?]
    at org.jboss.shrinkwrap.resolver.impl.maven.MavenFormatStageImpl.asResolvedArtifact(MavenFormatStageImpl.java:40) ~[sabre-0.1.1-all.jar:?]
    at net.minestom.dependencies.maven.MavenResolver.resolve(MavenResolver.kt:62) ~[?:?]
    at net.minestom.dependencies.DependencyGetter.get(DependencyGetter.kt:25) ~[?:?]
    at net.minestom.server.extensions.ExtensionManager.loadDependencies(ExtensionManager.java:371) [?:?]
    at net.minestom.server.extensions.ExtensionManager.loadExtensions(ExtensionManager.java:66) [?:?]
    at net.minestom.server.MinecraftServer.init(MinecraftServer.java:143) [?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at net.minestom.server.Bootstrap.bootstrap(Bootstrap.java:29) [sabre-0.1.1-all.jar:?]
    at world.cepi.sabre.BootstrapWrapper.main(BootstrapWrapper.java:11) [sabre-0.1.1-all.jar:?]

Extension json:

{
  "entrypoint": "de.geolykt.easyconomy.minestom.EasyconomyAdvanced",
  "name": "EasyconomyAdvanced",
  "version": "1.1.0",

  "externalDependencies": {
    "repositories": [
      {"name": "Central", "url": "https://repo1.maven.org/maven2/"}
    ],
    "artifacts": [
      "com.typesafe:config:jar:1.4.1",
      "org.spongepowered:configurate-hocon:4.0.0"
    ]
  }
}

I have confirmed that it's not an issue with the Minestom demo server, so It's probably an issue with the server implementation (I don't believe that, but Minestom support told otherwise).

LeoDog896 commented 3 years ago

As far as I know, it works fine with the newest version of Sabre, 0.1.1, but I'll keep looking into it.

It works fine with the artifacts shown above, but I just want to confirm it also works on your side: https://github.com/Project-Cepi/Sabre/releases/tag/0.1.1

Geolykt commented 3 years ago

Nope, ain't working. (I'd be suprised if aff16a9 broke it)

LeoDog896 commented 3 years ago

https://stackoverflow.com/questions/57431643/unsupportedoperationexception-no-format-processor-for-org-jboss-mavenresolved

It seems like the issue is related to Minestom, as there are no mixins to modify Minestom by default -- it may be a problem of it being a packaged jar.

CmdrNorthpaw commented 3 years ago

Perhaps it is to do with the META-INF/services conflict issue we keep having with the bootstrapper