各位大佬们,有没有好用的 jar 包加固的工具推荐

2025 年 3 月 31 日
 kssss

各位吴彦祖们,有没有好用的 jar 包加固的工具推荐,收费的也可以,预算不是很高,大厂的上万的产品用不起,有没有什么好用的推荐

3998 次点击
所在节点    Java
12 条回复
exploretheworld
2025 年 4 月 1 日
要是 jdk 版本高的话,拿 graalvm 编译成原生 exe ,直接无法反编译 Java 代码
cvbnt
2025 年 4 月 1 日
proguard ?
xyooyx
2025 年 4 月 1 日
至少到字节码层面,都可以 Instrumentation 客户端连上去,从 classloader 中已加载的都 dump 下来
kssss
2025 年 4 月 1 日
@exploretheworld 试过了的兼容性不好,程序跑不起来
kssss
2025 年 4 月 1 日
@cvbnt 这个貌似只能混淆
macaodoll
2025 年 4 月 1 日
看你情况了,如果你是可执行的 swing 程序这些的话,直接 jar2exe,如果是 springboot fatjar 的话需要改的地方有点多,不建议,如果是作为依赖的 jar,那只能混淆了
flyqie
2025 年 4 月 1 日
有功夫加固不如做混淆。。

加固的话目前似乎没有完全能保证的方案,除非你直接 native ,混淆基本能应对大多数环境了。
liuzhedash
2025 年 4 月 1 日
@kssss
之前在商业软件上用过 proguard ,当然不可能说无懈可击,但是基本够用了,友商用的也都是这个。
而且你总得跑个 jvm 吧,人家 dump 一下 jvm 的进程,你的字节码也就出来了。再去折腾 jvm 就不太可行了,里面很多麻烦事儿,而且应用层面也会有些难以控制的影响。
bli22ard
2025 年 4 月 1 日
找个开源的 jvm , 然后找到类加载器的实现,然后在那里处理 class 的解密。这样要求客户用你的定制 jvm ,别的 jvm 直接用不了
kssss
2025 年 4 月 1 日
@macaodoll 我感觉 jar2exe 应该也可以,但是我已经找了一个其他的在用了
183shl
2025 年 4 月 2 日
xjar? 没实际用过,菜鸟打印组件好像是这个
Syriana
2025 年 4 月 23 日
如果混淆的话,代码行数变了、类名变了如何 DEBUG 日志?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1122398

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX