2016-05-14 97 views
0

我有一個android項目,我想通過將其中一個作爲庫項目來分開兩個模塊。但是將成爲圖書館一部分的課程擴展了一個將在根項目中的課程。那麼,如何將這兩個鏈接到build.gradle?在擴展另一個類在根項目中的android庫項目中的類

搖籃根項目的文件包括:

sourceSets { 
    main { 
     res.srcDirs = ['res'] 
     main.java.srcDirs = ['src'] 
     manifest.srcFile 'AndroidManifest.xml' 
     proto.srcDirs 'protos/' 
    } 
} 

dependencies { 

    compile files('libs/host-libprotobuf-java-2.3.0-nano.jar') 
    compile files('libs/protobuf-java-2.3.0.jar') 
    compile project('lib') 
} 

庫項目gradle這個文件包含:

sourceSets { 
    main { 
     manifest.srcFile 'AndroidManifest.xml' 
     java.srcDirs = ['src'] 
     resources.srcDirs = ['src'] 
     aidl.srcDirs = ['src'] 
     renderscript.srcDirs = ['src'] 
     res.srcDirs = ['res'] 
     assets.srcDirs = ['assets'] 
    } 
} 

在這種情況下,它顯示「LIB」項目中,我的繼承類的錯誤根項目。如果我modifiy庫中的gradle文件java.srcDirs到

java.srcDirs = ['src', '../src'] 

類被擴展而沒有任何編譯問題,但在其他根類項目的獲取問題。

那麼,誰能告訴我如何鏈接這兩個?

回答

1

循環依賴(模塊)是一個非常糟糕的主意。你應該總是避免它們。

解決方案:

  • 移動基類到庫模塊或
  • 創建的基類的第三模塊和來自兩個其他模塊引用它
相關問題