Proguard混淆時,引入Junit4測試庫,引起混淆異常

        Proguard混淆代碼時,報出如下異常:java

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)。android

問題來了:Junit4應該屬於系統自帶的類庫,而混淆只需排除第三方類庫,Proguard混淆時是否誤將Junit4當作了第三方類庫?仍是Junit4自己就是第三方類庫?望大神指教~~        
測試

相關文章
相關標籤/搜索