2012-12-24 41 views
8

其實這是一個答案,而不是一個問題了: 我沒有在Windows上使用JodaTime使用ProGuardProGuard的didnt在Windows中使用約達時間編譯

Proguard的配置花了很多時間被包含在我的Android項目:

-libraryjars C:\Users\Reto\Documents\GitHub\advanceIT\LoveClockPAY\libs\joda-time-2.1.jar 

我有以下錯誤:

  1. 的ProGuard沒有找到我的JAR,說:

    Can't read [C:\Users\Reto\Documents\GitHub\advanceIT\LoveClockPAY\libs\joda-time-2.1.jar] (No such file or directory)

    解決方案

    -libraryjars libs/joda-time-2.1.jar

  2. 的ProGuard didnt想編譯和引發的錯誤的許多線路是這樣的:

    Warning: org.joda.time.base.AbstractDuration can't find referenced class org.joda.convert.ToString

    解決方案

    # Exclude those 2 dependency classes, cause otherwise it wont compile

    -dontwarn org.joda.convert.FromString

    -dontwarn org.joda.convert.ToString

+0

FWIW一個簡單的應用程序,則'-dontwarn'&'-libraryjars'產生相同的APK文件的大小,並且兩個APK都可以工作。所以在這種情況下忽略是好的。此外,添加額外的jar文件不會增加輸出大小(它不應該 - 我只是爲未來的讀者確認) –

回答

4

或可選擇地作爲問題2.解決方案,您可以添加一個實現包括在喬達變頻-xxx.jar。可以發現on the joda-convert homepage

然後,只需添加下面一行到您的ProGuard配置:

-libraryjars YOUR_DIR_WITHS_JARS/joda-convert-1.3.1.jar