当前位置: 首页 > article >正文

SpringBoot开发——Jar 包加密防止反编译

文章目录

  • 版本
  • 一、proguard-maven-plugin
  • 二、classfinal-maven-plugin
  • 三、实战

今天给大家分享一个 SpringBoot 程序 Jar 包加密的方式,通过代码加密可以实现无法反编译。

应用场景就是当需要把公司的产品部署到友方公司或者其他公司时,可以防止客户直接反编译出来源码,大大提升代码的安全性。

版本

  • springboot 2.6.8
  • jdk8

一、proguard-maven-plugin

第一种方式就是使用代码混淆的方式,可以参考proguard-maven-plugin插件使用,因为配置复杂,用起来太麻烦,本文不做重点介绍。

https://github.com/wvengen/proguard-maven-plugin

二、classfinal-maven-plugin

第二种方式就是使用代码加密的方式,classfinal-maven-plugin方式比较简单,只需要在pom.xml文件中引入一个plugin,然后简单的修改几项配置即可使用。

这种方式不仅可以对代码进行加密,对配置文件application.ymllib 下的依赖也可以加密。

还可以指定机器运行程序。

https://gitee.com/roseboy/classfinal

三、实战

下面我们实战一下,首先创建一个 SpringBoot 程序,在 pom.xml 中加入。

需要注意的是,该插件需要放到spring-boot-maven-plugin后面

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin

http://www.kler.cn/a/404360.html

相关文章:

  • 【Xbim+C#】创建圆盘扫掠IfcSweptDiskSolid
  • centos安装jenkins
  • 如何使用本地大模型做数据分析
  • Elasticsearch面试内容整理-实践与应用场景
  • 【PCIE常见面试问题-1】
  • SOL链上的 Meme 生态发展:从文化到创新的融合#dapp开发#
  • 高校节能降耗系统解决方案
  • 使用Notepad++工具去除重复行
  • Vue实战案例:一步步构建企业级项目1
  • Ansys Mechanical 中的 Step 函数在哪里?
  • 【代码随想录】贪心
  • 彻底理解Redis的缓存击穿、雪崩和穿透问题
  • 避免 Git 提交混淆:如何管理用户信息和配置
  • Vue 的各个生命周期
  • opencv(c++)---自带的卷积运算filter2D以及应用
  • Github 开源 10K Stars 自动化 API、后台作业、工作流和 UI 的开发平台
  • 学习Gentoo系统中二进制软件包和源代码包的概念
  • 一维卷积神经网络(1D-CNN)
  • C语言之实现简单的表达式计算器
  • Vue前端开发子组件向父组件传参
  • CTFHub-hate_php
  • 学习C#中的BackgroundWorker 组件
  • 贴贴,一款windows剪切板管理软件
  • std::weak_ptr应用于观察者模式的示例
  • 点亮创新之光:常用缺陷检测算法原理、介绍与发文突破方向全解
  • 持续集成与持续部署:CI/CD实现教程