博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
proguard混淆jar文件
阅读量:7079 次
发布时间:2019-06-28

本文共 1592 字,大约阅读时间需要 5 分钟。

Proguard是个优秀的java混淆工具,使用示例如下,一个java工程对外接口代码如下(无需混淆)

package com.ciaos.open;import com.ciaos.inner.InnerTool;public class OpenTool {    public static void method()    {        System.out.println("public method");        InnerTool.method();    }}

内部调用函数如下(需要混淆)

package com.ciaos.inner;public class InnerTool {    public static void method()    {        System.out.println("need encrypt");    }}

我们只想在打包的jar文件中保留OpenTool.method接口,则proguard配置文件library.pro文件如下:

## This ProGuard configuration file illustrates how to process a program# library, such that it remains usable as a library.# Usage:#     java -jar proguard.jar @library.pro## Specify the input jars, output jars, and library jars.# In this case, the input jar is the program library that we want to process.-injars  D:\libtool.jar-outjars D:\libtool_min.jar-libraryjars  C:\Users\shipeng\AppData\Local\MyEclipse Professional 2014\binary\com.sun.java.jdk7.win32.x86_1.7.0.u45\jre\lib\rt.jar#-libraryjars  E:\Works\fastjson-1.1.34.android.jar-printmapping map\proguard.map -overloadaggressively -defaultpackage ''  -allowaccessmodification -dontoptimize-overloadaggressively-keepattributes InnerClasses,SourceFile,LineNumberTable,Signature-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*-optimizationpasses 5-keepattributes Exceptions-keep public class com.ciaos.open.OpenTool{   public *; }#-keep public class com.ciaos.inner.InnerTool #{   #public *; #}

混淆工具脚本

del "D:\libtool_min.jar"java -jar lib/proguard.jar @library.propause

更多用法参照,proguard也有插件集成到eclipse中。

转载于:https://www.cnblogs.com/ciaos/p/4368588.html

你可能感兴趣的文章
epoll 使用小结
查看>>
c#调用存储过程实现登录界面
查看>>
测试类。。。重写篇
查看>>
二进制
查看>>
入侵式与非入侵式JavaScript
查看>>
ny47 过河问题
查看>>
神奇高效的Linux命令行
查看>>
阿里云老后台
查看>>
mikadonic-文件访问控制设置(深层次的权限控制setfacl)
查看>>
这是标题,用来测试博客皮肤标题
查看>>
AJax详解
查看>>
从一段时间段中获取所有日期
查看>>
Java中如何设置表格处于不可编辑状态
查看>>
Java JTable视图窗口滚动并定位到某一行
查看>>
课堂练习
查看>>
HTML学习成果 制作一个空白简历
查看>>
使用mybatis自带工具,自动生成表对应domain、mapper.xml以及dao
查看>>
餐饮ERP相关问题FAQ
查看>>
基于 Vue.js 的移动端组件库mint-ui实现无限滚动加载更多
查看>>
Matrix Computations 1
查看>>