4

我在 Eclipse 中创建了一个插件项目,作为 jar 分发。用户可以获取这个 jar 并使用 JAD 对其进行反编译。 有什么办法可以让我停止对 jar 文件的反编译? 或者,至少,对用户隐藏我的源代码?

4

2 回答 2

5

阻止你的 jar 被反编译的最好方法是让用户没有理由想要这样做。混淆只是一个创可贴。事实上,如果它足够有名,有些人可能会为了挑战而扭转它。

于 2012-07-04T15:17:37.200 回答
3

如果您不将源代码插入 jar,则您的源代码不是由反编译器反编译的,而是类似的。

但是,您可以使用混淆器使代码反编译产生非常难看的代码,例如Proguard

ProGuard 是一个免费的 Java 类文件收缩器、优化器、混淆器和预验证器。它检测并删除未使用的类、字段、方法和属性。它优化字节码并删除未使用的指令。它使用简短的无意义名称重命名剩余的类、字段和方法。最后,它会为 Java 6 或 Java Micro Edition 预先验证处理后的代码。

使用术语obfuscator搜索其他产品。

于 2011-12-12T06:49:53.460 回答