Maven加密JAR包

在某些情况下可能会需要将JAR包提供给第三方使用,但又不想泄露源码,可以对架包进行加密处理。可以使用xjar-maven-plugin插件对生成得JAR进行加密,Maven配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<plugin>
<groupId>com.github.core-lib</groupId>
<artifactId>xjar-maven-plugin</artifactId>
<version>v2.0.6</version>
<executions>
<execution>
<goals>
<goal>build</goal>
</goals>
<phase>package</phase>
<configuration>
<password>7nBHK8bKB6</password>
<includes>
<include>com/icloud/**</include>
</includes>
<sourceDir>${outputDirectory}</sourceDir>
<sourceJar>${finalName}.jar</sourceJar>
<targetDir>${assembly.outputDirectory}</targetDir>
<targetJar>${finalName}-encrypted.jar</targetJar>
</configuration>
</execution>
</executions>
</plugin>

在执行JAR包时,需要在启动命令中加入--xjar.password=7nBHK8bKB6命令进行解密,否则JAR包将不能正常启动。