Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何阻止proguard混淆整个包?_Java_Obfuscation_Proguard - Fatal编程技术网

Java 如何阻止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*

我需要防止Proguard混淆包
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及其子包中仍然会被混淆。嗨,如何以这种方式只保留一个类文件?你有没有发现为什么这会给你“意外的关键字”?我用的是类似的东西,过去也能用,但最近我也犯了同样的错误。