我的工作区中有三个eclipse项目(项目A、项目B和项目C)。项目B和C依赖于项目A。
在我的build.gradle文件中,我将B和C中的依赖项设置为引用A:
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
compile('com.example:projectA:1.0')
}但是,当我右键单击并选择项目B或C上的Gradle->Refresh Gradle项目时,它会声明它无法解决projectA依赖。
我使用的是Mars 4.5.2和Buildship版本1.0.20。我知道Buildship 2.0一旦发布,将提供支持,因此它可以将其他eclipse项目称为依赖项。在此期间,我如何将项目A安装到回购程序中,并在项目B和C中引用它?我没有在Buildship Gradle任务中看到项目A的安装选项。
发布于 2016-09-27 15:36:51
您已经使用GAV ():com.example:projectA:1.0添加了一个依赖项。
当您使用GAV在gradle中声明依赖项时,gradle假设它应该在它所知道的所有可用的Maven或Ivy存储库中查找该依赖项。我认为它无法解决GAV的原因是,您从未将项目A发布到构建搜索的任何存储库中。
你有两条出路:
compile project(':projectA')后者可能要容易得多。
顺便说一句,Buildship本身可能与这个问题没有什么关系,而是使用依赖项跟踪构建系统(如Gradle或Maven )的一个普遍问题。我记得在3.0和更高版本中,我看到了一些关于Gradle如何更好地解决这个问题的参考,但是我现在似乎找不到这个链接。
https://stackoverflow.com/questions/39728355
复制相似问题