上文中,我们使用jasypt对项目中application.yml配置文件进行了加密。很多时候我们在将项目打成jar包之后,也是不希望被反编译的,毕竟是我们自己辛苦写的代码。
那怎么办呢?
有现成的轮子供我们使用:classfinal
官网:ClassFinal: Java字节码加密工具
这是一个开源项目,是的,这是一个开源项目,所以呢,classfinal混淆代码也不是一定不会被反编译的,这里要注意。
Classfinal是使用探针技术对jar包进行加密,简单理解就是类似于aop切面编程,就是在代码运行前后对代码进行操作。很显然,classfinal就是在代码运行前对代码进行解密。那么如果我们看懂了classfinal对代码进行解密的算法。那就是可以对classfinal加密的jar包进行反编译操作的,从而获取到源码的。
如果classfinal加密操作不满足您的要求,可以尝试一下class-winter这个开源项目。
一:在pom文件中添加插件依赖
这部分原本很简单,如果你是一个单模块项目,自然是很简单的。但是呢,我是一个多模块项目。
我是现将插件写入了父项目的pom.xml中,但是在项目打包的时候,报错了。报错原因我这里就不展示了。
那么这个插