因此,假设我们的 Java 应用程序有一个 Jar 文件,其中包含它所依赖的库的 Jar 文件,一个 jdbc 或任何其他第三方 jar。
您如何继续使用免费软件对其进行混淆?我的意思是,混淆你的代码,让罐子保持不变。
我尝试使用Proguard,但无济于事。甚至作者在 sourceforge 论坛上告诉我这是不可能的。
但是你可以用一个丑陋的黑客手动完成它,包括将 jar 重命名为 zip 并修改内部数据,那么,为什么软件不能做到这一点呢?
因此,假设我们的 Java 应用程序有一个 Jar 文件,其中包含它所依赖的库的 Jar 文件,一个 jdbc 或任何其他第三方 jar。
您如何继续使用免费软件对其进行混淆?我的意思是,混淆你的代码,让罐子保持不变。
我尝试使用Proguard,但无济于事。甚至作者在 sourceforge 论坛上告诉我这是不可能的。
但是你可以用一个丑陋的黑客手动完成它,包括将 jar 重命名为 zip 并修改内部数据,那么,为什么软件不能做到这一点呢?
您可以使用Jar Jar Links从多个 jar 中创建一个 jar 。然后你用ProGuard处理结果。
大概,您有某种构建脚本来编译您的源代码,将其与其他 jar(One-Jar/Fat Jar/等)打包,然后构建您的 jar。
您应该能够在编译和打包之间插入混淆任务。
如果您选择的混淆工具只接受 jar 输入,您应该能够独立地编译、jar 和混淆您的代码。之后,让您的脚本解压缩混淆文件并进行打包。
不要浪费你的时间。任何人都可以反编译您的混淆代码,您唯一要做的就是挫败想要调试您的软件问题的合法用户。
混淆是法律问题的一种技术解决方案(而且是一个糟糕的解决方案)。