Java 如何阻止proguard混淆整个包?
我需要防止Proguard混淆包Java 如何阻止proguard混淆整个包?,java,obfuscation,proguard,Java,Obfuscation,Proguard,我需要防止Proguard混淆包com.foo.*中的任何类 我试过: -keep com.foo.** { <fields>; <methods>; <constructors>; } -保留com.foo.*{ ; ; ; } 但是proguard说: 错误:文件第32行中出现意外关键字“com.sun.foo.*.” “obfuscationConfig.pro”,包含在参数1中 如果我尝试keep name com.foo*
com.foo.*
中的任何类
我试过:
-keep com.foo.** {
<fields>;
<methods>;
<constructors>;
}
-保留com.foo.*{
;
;
;
}
但是proguard说:
错误:文件第32行中出现意外关键字“com.sun.foo.*.”
“obfuscationConfig.pro”,包含在参数1中
如果我尝试
keep name com.foo**
或keep*com.foo.*
尝试使用以下选项,则会出现类似错误:
-keep class com.foo.** {
public protected private *;
}
这不就是保存所有东西吗?@tomwhipple它会将所有东西保存在
com.foo
包(和子包)。。。答案是“是”,为了防止包私有成员混淆,必须在块中添加新行,*代码>多么讨厌用户。@tomwhipple内部类在com.foo及其子包中仍然会被混淆。嗨,如何以这种方式只保留一个类文件?你有没有发现为什么这会给你“意外的关键字”?我用的是类似的东西,过去也能用,但最近我也犯了同样的错误。