jar加密
wang 2021-12-30 java
# 一、下载安装go的环境
go:安装包下载地址为
go:国内下载地址为
1.下载二进制包:go1.4.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.4.linux-amd64.tar.gz
1
2.设置环境变量
vi /etc/profile
# 在最末尾加上下面配置
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
# 刷新
source /etc/profile
# 执行查询版本,有看到版本号就表示安装和配置成功
go version
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 二、配置java项目的pom文件
1.在java项目的pom文件 project 层里加上以下配置
<project>
<!-- 打包加密-->
<pluginRepositories>
<pluginRepository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</pluginRepository>
</pluginRepositories>
<build>
<!--项目包名-->
<finalName>syyo-jar-jiami</finalName>
<plugins>
<!-- maven 打包-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!-- xjar 加密插件包-->
<plugin>
<groupId>com.github.core-lib</groupId>
<artifactId>xjar-maven-plugin</artifactId>
<version>4.0.1</version>
<executions>
<execution>
<goals>
<goal>build</goal>
</goals>
<phase>install</phase>
<configuration>
<!-- 需要加密的包路径-->
<includes>
<include>/**/*.class</include>
<include>/mapper/**/*Mapper.xml</include>
<include>/*.yml</include>
</includes>
<!-- 不需要加密的包路劲-->
<excludes>
<exclude>/templates/**.*</exclude>
<exclude>/static/**.*</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
2.执行命令maven打包命令
mvn clean install -Dxjar.password=密码
1
最后target里会生成3个文件
- syyo-jar-jiami.xjar:加密后的jar包,体积比没加密的大一倍
- syyo-jar-jiami.jar:没加密的jar包
- xjar.go:xjar包的编译器
3.执行命令,linux会生成一个xjar.sh执行文件,windows是xjar.exe
go build xjar.go
1
4.然后启动java项目的命令前加上这个执行器命令就可以了
# linux启动命令
./xjar java -jar syyo-jar-jiami.xjar
# windows
xjar.exe java -jar syyo-jar-jiami.xjar
1
2
3
4
5
2
3
4
5