JFinal加密你值得学习

信息安全是当今互联网不可忽视的一个重大问题。加密是最直接的手段,相当于让你的数据多了一把锁,安全性直线上升。

jar包作为java程序运行的核心元素,加密变得不容忽视。本文将介绍基于JFinal 插件对我们的jar包进行加密

准备工作

  1. 引入plugin
xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>

 <groupId>com.kang.sz</groupId>
 <artifactId>Tools</artifactId>
 <version>1.0-SNAPSHOT</version>


 <properties>
         <spring.boot.version>2.6.0</spring.boot.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 </properties>
<!--    <build>-->
<!--        <pluginManagement>-->
<!--            <plugins>-->
<!--            <plugin>-->
<!--                <groupId>org.springframework.boot</groupId>-->
<!--                <artifactId>spring-boot-maven-plugin</artifactId>-->
<!--                <configuration>-->
<!--                    <mainClass>com.kang.sz.app.ToolsStart</mainClass>-->
<!--                    <layout>JAR</layout>-->
<!--                </configuration>-->
<!--                <executions>-->
<!--                    <execution>-->
<!--                        <goals>-->
<!--                            <goal>repackage</goal>-->
<!--                        </goals>-->
<!--                    </execution>-->
<!--                </executions>-->
<!--            </plugin>-->
<!--            </plugins>-->
<!--        </pluginManagement>-->
<!--    </build>-->

 <build>
     <plugins>
         <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-jar-plugin</artifactId>
             <version>3.2.0</version>
             <configuration>
                 <archive>
                     <manifest>
                         <addClasspath>true</addClasspath>
                         <mainClass>com.kang.sz.app.ToolsStart</mainClass>
                     </manifest>
                 </archive>
             </configuration>
         </plugin>

         /**
         * 使用classFinal插件去加密。  关键插件
         */
         <plugin>
             <!-- https://gitee.com/roseboy/classfinal -->
             <groupId>net.roseboy</groupId>
             <artifactId>classfinal-maven-plugin</artifactId>
             <version>1.2.1</version>
             <configuration>
                 <password>123456</password>   //设置密码
                 <!--加密打包之后pom.xml会被删除,不用担心在jar包里找到此密码-->
                 <packages>com.kang.sz.app</packages>
                 <!--<excludes>org.spring</excludes>-->
                 <!--<libjars>a.jar,b.jar</libjars>-->
             </configuration>
             <executions>
                 <execution>
                     <phase>package</phase>
                     <goals>
                         <goal>classFinal</goal>
                     </goals>
                 </execution>
             </executions>
         </plugin>

     </plugins>
 </build>


</project>

效果验证

如果需要执行jar,需要输入密码,具体格式如下

ps: XML工具格式化后再贴入代码块

相关推荐
码路飞29 分钟前
GPT-5.3 Instant 终于学会好好说话了,顺手对比了下同天发布的 Gemini 3.1 Flash-Lite
java·javascript
SimonKing1 小时前
OpenCode AI编程助手如何添加Skills,优化项目!
java·后端·程序员
Seven973 小时前
剑指offer-80、⼆叉树中和为某⼀值的路径(二)
java
怒放吧德德14 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆16 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌18 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊19 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang19 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang21 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解21 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端