intoolswetrust / jd-cli

Command line Java Decompiler

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

unable to compile with jcommander-1.82

blshkv opened this issue · comments

>>> Compiling source in /var/tmp/portage/dev-util/jd-cli-1.2.1/work/jd-cli-jd-cli-1.2.1 ...
javac -source 11 -target 11 -d target/classes -encoding UTF-8 -classpath /usr/share/jcommander/lib/jcommander.jar:/usr/share/slf4j-api/lib/slf4j-api.jar:/usr/share/logback-core/lib/logback-core.jar:/usr/share/logback-classic/lib/logback-classic.jar:/usr/share/jd-lib/lib/jd-lib.jar:/usr/share/janino/lib/commons-compiler.jar:/usr/share/janino/lib/janino.jar:/usr/share/javax-mail/lib/javax-mail.jar:/usr/share/reflections/lib/reflections.jar:/usr/share/resin-servlet-api-3.1/lib/resin-servlet-api.jar:/usr/share/resin-servlet-api-3.1/lib/servlet-api.jar:/usr/share/resin-servlet-api-3.1/lib/jsp-api.jar:/usr/share/jakarta-activation-1/lib/jakarta-activation.jar:/usr/share/dom4j-1/lib/dom4j.jar:/usr/share/gson-2.6/lib/gson.jar:/usr/share/javassist-3/lib/javassist.jar:/usr/share/slf4j-simple/lib/slf4j-simple.jar:/usr/share/jd-core/lib/jd-core.jar:/usr/share/jansi/lib/jansi.jar:/usr/share/jakarta-activation-api-1/lib/jakarta-activation-api.jar:/usr/share/jansi-native/lib/jansi-native.jar:/usr/share/jaxb-api-2/lib/jaxb-api.jar:/usr/share/xpp2/lib/PullParser.jar:/usr/share/xpp2/lib/PullParser-intf.jar:/usr/share/xpp2/lib/PullParser-standard.jar:/usr/share/xpp2/lib/PullParser-x2.jar:/usr/share/xpp3/lib/xpp3.jar:/usr/share/xsdlib/lib/xsdlib.jar:/usr/share/relaxng-datatype/lib/relaxng-datatype.jar:/usr/share/xerces-2/lib/xerces.jar:/usr/share/hawtjni-runtime/lib/hawtjni-runtime.jar:/usr/share/xml-commons-external-1.4/lib/xml-commons-external.jar:/usr/share/xml-commons-resolver/lib/xml-commons-resolver.jar @sources.lst
jd-cli/src/main/java/com/github/kwart/jd/cli/Main.java:19: error: cannot find symbol
import static com.beust.jcommander.JCommander.getConsole;
^
  symbol:   static getConsole
  location: class JCommander
jd-cli/src/main/java/com/github/kwart/jd/cli/Main.java:84: error: cannot find symbol
            getConsole().println(getVersionLine());
            ^
  symbol:   method getConsole()
  location: class Main
jd-cli/src/main/java/com/github/kwart/jd/cli/ExtCommander.java:53: error: method does not override or implement a method from a supertype
    @Override
    ^
jd-cli/src/main/java/com/github/kwart/jd/cli/ExtCommander.java:59: error: method usage in class JCommander cannot be applied to given types;
        super.usage(out, indent);
             ^
  required: no arguments
  found: StringBuilder,String
  reason: actual and formal argument lists differ in length
Note: jd-cli/src/main/java/com/github/kwart/jd/cli/ExtCommander.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

Hi @blshkv, feel free to send a PR with a fix improving the ExtCommander class to fit the newer jcommander version.
Thank you for the report.

sorry, I don't have bandwidth. I'm a pentoo developer and can't fix all tools myself. Filing issues and following up on it is a big effort for me already.

Closing for now. This is not an issue while the jd-cli works properly with version 1.32.

https://security.snyk.io/vuln/SNYK-JAVA-COMBEUST-174815

If you need a reason, here it is a vulnerability in that old version
Additionally, i had to fork the old version and have to maintain it now.

Please reconsider