java - gradle包括另一个项目的库

标签 java android gradle aide-ide

我有此项目设置(在Android AIDE中):

|---Project1  
|     |---App  
|     |---Lib
|
|---Project2  
     |---App

我想将Project 1 Lib添加为依赖项(或链接源,因为我只需要从库中访问1类)到Project2。

Project2 settings.gradle:
include ':Lib'
project(':Lib').projectDir = new File(settingsDir, '../Project1/Lib')

Project2 build.gradle:
compile project(':Lib')

我收到以下错误:
Project dependency 'Lib' not found.

文件夹路径有问题吗?我没有找到任何解决此问题的好方法,并且我对gradle不太熟悉。

如果我改为将库源文件夹链接到Project2,我尝试将以下行添加到build.gradle(在android部分下):
 sourceSets {
    main.java.srcDirs += '/../Project1/Lib/src/main/'
}

如果我使用了完整的路径到类文件的文件夹,则可以访问源,但是有一个问题,当我从Project2中的Lib实例化该类时,它给我一个错误,即在包内找不到该类。

两个项目都需要具有相同的程序包名称吗?在没有图书馆作为独立图书馆的情况下管理此问题的最佳解决方案是什么?

最佳答案

将您的Lib文件夹复制到Project 2 ...
在您的Project 2 App的模块中,将此内容添加到build gradle文件中-

compile project(':Lib')

关于java - gradle包括另一个项目的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41477147/

相关文章:

java - 为什么要在 for 循环中使用双变量

java - InvalidKeySpecException : How do I extract a private key from a . 文件?

android - 如何删除Android textview上的第一个字符缩进

java - Android Studio 上 Kotlin(非 Android)项目的 ClassNotFoundException 错误

intellij-idea - 是否可以自定义IntelliJ IDEA 14. 0's “Refresh all Gradle projects”/Gradle项目同步行为?

Java平台独立加密

java - Spring DI NullPointerException @Autowired 失败

将参数传递给方法的 Android 数据绑定(bind)

java - 回收站 View : last item's animation on notifyItemRemoved()

java - Firebase依赖项没有显示?