使用xjar
背景:
spring boot开发的项目,需要对jar包进行一些处理,使用了xjar。
一、在启动类的pom.xml添加如下配置
com.github.core-lib
xjar
4.0.2
<id>jitpack.ioid>
https://jitpack.io
二、新建XjarPackage启动类,代码如下
package com.fast; import io.xjar.XCryptos; public class XjarPackage { /** *jar包加密 */ public static void main(String[] args) { try { XCryptos.encryption() .from("D:\\project\\engine\\starter\\target\\engine.jar") // 加密的密码 .use("123456") // 要加密的资源 .include("/**/*.class") .include("/**/*.xml") .include("/**/*.yml") .include("/**/*.yaml") // 加密后的jar,此时:通过jd-gui反编译失败 .to("D:\\build\\engine.jar"); System.out.println("======》完成"); }catch (Exception e){ e.printStackTrace(); } } }
XjarPackage启动类,会在D:/build目录下生成待加密的文件,接着在D:/build目录下执行
go build xjar.go
等完成以后,jar的加密就完成了
三、执行加密后的jar
在D:/build目录下执行如下命令:
xjar java -jar engine.jar
参考资料:
https://blog.csdn.net/qq_47770103/article/details/120785090
https://blog.csdn.net/qq_33278354/article/details/106278539
https://github.com/core-lib/xjar
https://cloud.tencent.com/developer/article/1834470