下的那些类具有相同的包
Proguard有基于包名/层次结构的-keep
-ing类的选项。
是否可以根据源文件的实际路径来-keep
?
的例子:
java/com/a/b/c/Class.java
包含package com.a.b.c.Class
tests/com/a/b/c/ClassTest.java
包含package com.a.b.c.ClassTest
可能有大量的"*测试"类,我想保护-keep
下的tests/*
的一切用于测试目的。它不应该在tests/*
目录之外保留任何碰巧匹配"*Test"的类。
这似乎不可能与包匹配,因为它与java/*
不,这不可能。ProGuard在应用规则时不考虑文件路径。
你可以为你的测试类使用注解,例如
@TestClass
public class MyTest {
...
}
,然后添加如下配置:
-keep @TestClass class * { *; }