使用xjar加密打包后的jar

1 pom

<dependency>
<groupId>com.github.core-lib</groupId>
<artifactId>xjar</artifactId>
<version>4.0.0</version>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.20</version>
</dependency>
<repositories>
<repository>
<id>jitpack</id>
<url>https://jitpack.io</url>
</repository>
</repositories>

2 通过main方法运行
import io.xjar.XCryptos;
public static void main(String[] args) throws Exception {
produce();
}

public static void produce() throws Exception {

    XCryptos.encryption()
            // 项目生成的jar
            .from("D:\\projects\\test\\target\\test.jar")
            // 加密的密码
            .use("testaa1111122222")
            // 要加密的资源
            .include("/**/*.class")
            .include("/**/*.xml")
            .include("/**/*.yml")
            // 加密后的jar,此时:通过jd-gui反编译失败
            .to("D:\\temp\\test.jar");
}

详细步骤说明:

1、对Springboot项目maven打包后生成的jar,以上述代码运行,可得到加密后的jar(此时加密的jar经jd-gui反编译报错)
2、生成加密jar的同时,目录下会生成xjar.go的GO启动器文件

yum install golang
go env

3、对xjar.go编译(需要安装go环境,区分windows和linux),生成对应的go执行器。命令:
go build xjar.go

4、编译之后,得到执行器:
window:xjar.exe
linux:xjar

5、项目启动运行:

window:
xjar.exe java -jar test.jar

linux:
nohup ./xjar java -jar test.jar

6、此时jar通过xjar可正常运行

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容