Java proguard不创建输出jar
我在单个类文件上运行Java proguard不创建输出jar,java,proguard,Java,Proguard,我在单个类文件上运行proguard,但是output.jar文件未创建 $ javap -c java-8-classes/BinaryNode.class | sed -n "139,150p;151q" public int hashCode(); Code: 0: aload_0 1: getfield #2 // Field _data:[B 4: ifnonnull
proguard
,但是output.jar
文件未创建
$ javap -c java-8-classes/BinaryNode.class | sed -n "139,150p;151q"
public int hashCode();
Code:
0: aload_0
1: getfield #2 // Field _data:[B
4: ifnonnull 11
7: iconst_m1
8: goto 16
11: aload_0
12: getfield #2 // Field _data:[B
15: arraylength
16: ireturn
所以除非我弄错了(?)似乎BinaryNode::hashCode
只需要\u数据
字段
$ javap -c java-8-classes/BinaryNode.class | sed -n "5,6p;7q"
protected final byte[] _data;
因此,我相应地编辑了我的config.pro
:
$ cat config.pro
-injars java-8-classes/BinaryNode.class
-outjars output.jar
-verbose
-keep class com.fasterxml.jackson.databind.node.BinaryNode
{
protected final byte[] _data;
public int hashCode();
}
-allowaccessmodification
当我运行proguard时,输出jar不会被创建:
$ java -jar ../proguard/lib/proguard.jar -dontwarn @config.pro
ProGuard, version 7.1.0-beta2
Reading input...
Reading program directory [/home/oren/Documents/java-8-classes/BinaryNode.class] (filtered) # <---- OK??
Initializing...
<...>
Preparing output jar [/home/oren/Documents/output.jar] (filtered) # <---- WHY ???
$java-jar../proguard/lib/proguard.jar-dontwarn@config.pro
ProGuard,版本7.1.0-beta2
正在读取输入。。。
正在阅读程序目录[/home/oren/Documents/java-8-classes/BinaryNode.class](已过滤)#您可以试用非测试版的proguard吗。从表面上看,一切都很好。尝试6.0.1并再次处理输出。选项名称-injars
表明它需要jar文件,而不是类文件。回答如下:-需要整个jar。。。