2016-11-05 50 views
0

我有MySpecific.java對於2個項目(proj#1,proj#2)有不同的內容。 我需要爲每個項目構建此文件的不同版本。 在Android插件基於這個原因,我可以使用productFlavorshttps://developer.android.com/studio/build/build-variants.htmlGradle java插件 - Android插件產品Flavors的模擬

這是非常強大的工具。

我複製MySpecific.java到2個目錄:

src/proj#1/java/com/mycompany/myproject/widget/MySpecific.java 

src/proj#2/java/com/mycompany/myproject/widget/MySpecific.java 

而當我建立proj#1我用productFlavor "proj#1"和最終分配我已經從目錄MySpecific.java

proj#1/java/com/mycompany/myproject/widget/MySpecific.java 

當我建立proj#2我用productFlavor "proj#2"和最終分配我有MySpecific.java從目錄:

proj#2/java/com/mycompany/myproject/widget/MySpecific.java 

這是非常好的。

現在的問題是: 當我使用純java項目工作時,有gradle java插件,如productFlavors

回答

0

默認情況下不可用。

你可以做的是定義額外的源代碼集並使用它們來編譯和添加到最終的JAR中。

+0

我認爲源代碼集沒有幫助。 所以我需要2個版本的MyCustom.java。該文件對於每種口味都有不同的內容。所以我創建了例如將myCustom.java複製到src \ main \ java \ com \ mycompany \ myproject \ client \ ui \ MyCustom.java 至 src \ my_flavor \ java \ com \ mycompany \ myproject \ client \ ui \ MyCustom的.java。但Java編譯器拋出錯誤: MyCustom已定義的類型MyCustom.java/src目錄/ my_flavor/JAVA/COM/myCompany的/ myproject的/客戶機/ UI /線75的Java問題 還當我的gradle通過運行 gradlew my_flavorjar 我也得到相同的編譯錯誤 – Alexei