2015-10-19 38 views
0

我有我的項目使用的庫項目。另外我的項目有幾種構建口味。在代碼中,我引用了該庫中的一些類。我需要從我的.apk中刪除某些圖書館的圖書館。我知道這將導致NoClassDefFoundError,但對我來說沒關係。使用gradle從apk中刪除庫項目

我試圖用flavorCompile任務代替編譯,但是這在編譯我的項目期間導致了錯誤(如預期的那樣)。那麼我怎麼能在編譯期間讓libeaey項目存在,但是從.apk中刪除?

P.S.我知道我可以在編譯期間刪除它,並修改一些使用該庫中的類的代碼文件,但對於我而言,NoClassDefFoundError沒問題,所以我不希望每種風格的相同.java文件具有不同的版本。

EDIT1 我發現this文章,但搖籃版本似乎是老年人當時的一個。現在我知道我正在尋找能夠添加編譯時間依賴性的能力。

回答

0

你可以在依賴關係中添加風味特定的編譯塊,所以前例。如果你有自由氣息和支付 使用

dependencies { 

    payCompile '<something>' 
} 
+0

就像我說的我試了一下。但它在編譯時會排除它,導致無法完成構建。 – Lingviston

+0

並且您可以嘗試在**例52.18中的https://docs.gradle.org/current/userguide/dependency_management.html中列出的**配置**選項。項目的依賴配置** –

+0

不幸的是我不明白這個例子。 – Lingviston

0

您可以使用提供:

dependencies { 
    provided 'optional-lib' 
} 
+0

'提供'只能使用.jars使用,而我有一個庫項目。 – Lingviston