上一章节我们说了利用allatori技术对java class 文件内容进行 混淆,防止他人巧取代码技术,这一章节我们直接进入主题,利用YUI Compressor Maven 进行对前端静态资源JS和css的压缩和混淆。作者就是不喜欢打过多字,直接上步骤。
- 我们直接在pom.xml 中加入插件 YUI Compressor Maven
<plugin> <!-- YUI Compressor Maven压缩插件 --> <groupId>net.alchim31.maven</groupId> <artifactId>yuicompressor-maven-plugin</artifactId> <version>1.5.1</version> <executions> <execution> <goals> <goal>compress</goal> </goals> </execution> </executions> <configuration> <!-- 读取js,css文件采用UTF-8编码 --> <encoding>UTF-8</encoding> <!-- 不显示js可能的错误 --> <jswarn>false</jswarn> <!-- 是否混淆 --> <nomunge>true</nomunge> <!-- 若存在已压缩的文件,会先对比源文件是否有改动 有改动便压缩,无改动就不压缩 --> <force>false</force> <!-- 在指定的列号后插入新行 --> <linebreakpos>-1</linebreakpos> <!-- 压缩之前先执行聚合文件操作 --> <preProcessAggregates>true</preProcessAggregates> <!-- 压缩后保存文件后缀 无后缀 --> <nosuffix>true</nosuffix> <!-- 源目录,即需压缩的根目录 --> <sourceDirectory>src/main/resources</sourceDirectory> <!-- 输出目录,即压缩后的目录--> <outputDirectory>target/classes</outputDirectory> <force>true</force> <!-- 压缩js和css文件 --> <includes> <include>**/*.js</include> <include>**/*.css</include> </includes> <!-- 以下目录和文件不会被压缩 --> <excludes> <exclude>**/*.min.js</exclude> <exclude>**/*.min.css</exclude> <exclude>**/Mui/**</exclude> <exclude>**/layui2.4/**</exclude> </excludes> </configuration> </plugin>
源目录是未编译之前的路径地址,输出目录是编译后的路径地址,切记不要搞混!!
-
直接进行maven + package 打jar包 测试test ,出现以下类似信息,那么恭喜你,你成功了。
接下来你可以对照你的项目中js和压缩混淆后的js做对比了,你会发现好高大上的 js代码你也有了。