Swagger2Markup / swagger2markup-cli

Command line interface (CLI) for Swagger2Markup
Apache License 2.0
164 stars 37 forks source link

ClassNotFoundException in 1.3.0 #15

Closed mauricio-morales closed 7 years ago

mauricio-morales commented 7 years ago

I'm no Java expert, but I don't think I'm missing anything. Perhaps a missing jar in the package?

Exception in thread "main" java.lang.NoClassDefFoundError: javaslang/?
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at io.github.swagger2markup.Swagger2MarkupConverter.<init>(Swagger2MarkupConverter.java:59)
        at io.github.swagger2markup.Swagger2MarkupConverter$Builder.build(Swagger2MarkupConverter.java:353)
        at io.github.swagger2markup.cli.Application.run(Application.java:81)
        at io.github.swagger2markup.cli.Application.main(Application.java:61)
Caused by: java.lang.ClassNotFoundException: javaslang.?
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 40 more

From what I've read, it's related to this:

jar -tf swagger2markup-cli-1.3.0.jar
...
javaslang/?$Memoized.class
javaslang/?.class
...

Unpacking the .jar with 7Zip doesn't extract the ?.class file.

PS: got the idea to list the .jar from here: https://github.com/johnrengelman/shadow/issues/223

RobWin commented 7 years ago

Thx. I fix it tomorrow

RobWin commented 7 years ago

Does version 1.3.1 work for you? I can't reproduce it locally.

RobWin commented 7 years ago

Otherwise try to set the envrionment variable JAVA_OPTS=-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8

mauricio-morales commented 7 years ago

@RobWin do you have the 1.3.1 jar packed somewhere? I can't remember where I got the 1.3.0 from and doubt I packaged it myself.

mauricio-morales commented 7 years ago

nvm. Found it: http://central.maven.org/maven2/io/github/swagger2markup/swagger2markup-cli/1.3.1/swagger2markup-cli-1.3.1.jar

mauricio-morales commented 7 years ago

v1.3.1 no longer has the issue. You fixed it!

RobWin commented 7 years ago

:+1: