Proguard混淆时,引入Junit4测试库,引发混淆异常

        Proguard混淆代码时,报出以下异常:

Proguard returned with error code 1. See console
Note: there were 169 duplicate class definitions.
Warning: library class android.test.AndroidTestCase extends or implements program class junit.framework.TestCase
Warning: library class android.test.AndroidTestRunner extends or implements program class junit.runner.BaseTestRunner
Warning: library class android.test.InstrumentationTestCase extends or implements program class junit.framework.TestCase
Warning: library class android.test.InstrumentationTestSuite extends or implements program class junit.framework.TestSuite
Warning: library class android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests extends or implements program class junit.framework.TestCase
       You should check if you need to specify additional program jars.
 Warning: there were 5 instances of library classes depending on program classes.
          You must avoid such dependencies, since the program classes will
          be processed, while the library classes will remain unchanged.
 java.io.IOException: Please correct the above warnings first.
     at proguard.Initializer.execute(Initializer.java:321)
     at proguard.ProGuard.initialize(ProGuard.java:211)
     at proguard.ProGuard.execute(ProGuard.java:86)
     at proguard.ProGuard.main(ProGuard.java:492)

分析解决:项目的逻辑业务类在进行Junit4测试时引入了Junit4类库,混淆时将其当做了第三方JAR包,因此需要将其排除(Remove from Build Path)。

问题来了:Junit4应该属于系统自带的类库,而混淆只需排除第三方类库,Proguard混淆时是否误将Junit4当做了第三方类库?还是Junit4本身就是第三方类库?望大神指教~~        


转载于:https://my.oschina.net/u/2409919/blog/514366

你可能感兴趣的:(Proguard混淆时,引入Junit4测试库,引发混淆异常)