J2SE论坛网»J2SE技术»proguard 中如何保留所有继承了Serializable 的类
proguard 中如何保留所有继承了Serializable 的类
问?:
有一个如下的类:
package js.bean.infos;
public class UserInfo implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
public ImageBean(){}
private byte[] bufs ;
private String name;
public byte[] getBufs() {
return bufs;
}
public void setBufs(byte[] bufs) {
this.bufs = bufs;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
proguard.properties 中关于 Serializable中的部分如下:
第一种情况:取默认的:
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
第二种情况:
-keepclassmembers class * implements java.io.Serializable {
private static final long serialVersionUID;
private byte[] bufs ;
private String name;
public byte[] getBufs();
public void setBufs(byte[]);
public String getName();
public void setName(String)
}
分别试了这两种方法都不能将UserInfo类保留,仍然是类似于a.java , b.java
没办法最后只能采取 :
-keep class js.bean.infos.UserInfo{<fields>;<methods>;}这种方式才行
不知道大家有什么方法,不采取keep方法,来保留所有继承了Serializable类.
package js.bean.infos;
public class UserInfo implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
public ImageBean(){}
private byte[] bufs ;
private String name;
public byte[] getBufs() {
return bufs;
}
public void setBufs(byte[] bufs) {
this.bufs = bufs;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
proguard.properties 中关于 Serializable中的部分如下:
第一种情况:取默认的:
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
第二种情况:
-keepclassmembers class * implements java.io.Serializable {
private static final long serialVersionUID;
private byte[] bufs ;
private String name;
public byte[] getBufs();
public void setBufs(byte[]);
public String getName();
public void setName(String)
}
分别试了这两种方法都不能将UserInfo类保留,仍然是类似于a.java , b.java
没办法最后只能采取 :
-keep class js.bean.infos.UserInfo{<fields>;<methods>;}这种方式才行
不知道大家有什么方法,不采取keep方法,来保留所有继承了Serializable类.
答!: 1:
关注,限制于混淆的效果,我最多敢混淆私有的变量和方法,真的很不理想
相关JAVA教程:
求java操作telnet
达人们帮我看看问题在哪里
每隔1秒鐘就去檢查一個變量,當那變量變為0時,就println(“end”)怎麼寫呢?
java泛型问题
一个多线程的问题
newDialog为什么传递不了数据!SOS!
想利用MVC模式实现一个小程序,遇到了麻烦,高手帮忙看下。在线等
interface 和 Object 的问题
[说难不难的问题]:__FUNCTION__是c++中表示当前函数名的宏,java中又如何 获取当前类和方法 ?
String格式的问题
js 怎样获得td里的值?
关于嵌套类