에서 항아리를 보호하기 위해 , 적어도 decompilers에 대한 몇 가지 기본적인 보호.어떻게 이것이 매우 일반적인 문제입니다 알고, 좋은 주제 여기에 실제로 "단순/쉬운"디 컴파일
JD와 Jode 같은 일부 디 컴파일러를 일부 .jar 파일과 함께 사용하려고 시도했으며 모든 .java 클래스를 디 컴파일 할 수 없었습니다. 많은 경우에 오류가 발생했으며 많은 다른 매우 기본적인 코드가있었습니다.
이 디 컴파일러에서 jar 파일을 어떻게 보호합니까? 내 항아리와 함께 동일한 디 컴파일러를 사용할 때 모든 클래스가 디테일로 디 컴파일됩니다.
그래서 기본적으로 제 질문은 이러한 디 컴파일러에서이 오류의 원인이 될 수 있습니다. 자바 클래스가 암호화 되었기 때문입니까?
편집 :이었다 무엇
java.lang.ClassCastException: g cannot be cast to T
at bK.a(Unknown Source)
at T.a(Unknown Source)
at bK.<init>(Unknown Source)
at bW.a(Unknown Source)
at bW.<init>(Unknown Source)
at bW.<init>(Unknown Source)
at i.a(Unknown Source)
at i.a(Unknown Source)
at i.a(Unknown Source)
at de.fernflower.main.decompiler.ConsoleDecompiler.addSpace(Unknown Source)
at de.fernflower.main.decompiler.ConsoleDecompiler.main(Unknown Source)
:이 오류와 함께, 또한 FernFlower의 디 컴파일러와 시도
Exception while decompiling:java.lang.NoClassDefFoundError: [package.ClassName]
at jode.bytecode.ClassInfo.loadInfo(ClassInfo.java:631)
at jode.decompiler.ClassAnalyzer.<init>(ClassAnalyzer.java:86)
at jode.decompiler.ClassAnalyzer.<init>(ClassAnalyzer.java:123)
at jode.decompiler.Decompiler.decompile(Decompiler.java:191)
at jode.swingui.Main.run(Main.java:204)
at java.lang.Thread.run(Unknown Source)
: 나는 Jode 일부 자바 파일이 오류를 보여주는주의했다
거기에 보호? 내 항아리 파일에 대해 충분할 수 있다고 생각합니다.
Java 8을 사용하면 지원하지 않는 디 컴파일러가 혼란 스럽습니다. Fernflower (InteliJ에 내장되어 있음)는 Java 8을 잘 처리합니다. –