首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Buildship -将其他Eclipse项目作为依赖项

Buildship -将其他Eclipse项目作为依赖项
EN

Stack Overflow用户
提问于 2016-09-27 15:16:35
回答 1查看 516关注 0票数 2

我的工作区中有三个eclipse项目(项目A、项目B和项目C)。项目B和C依赖于项目A。

在我的build.gradle文件中,我将B和C中的依赖项设置为引用A:

代码语言:javascript
复制
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的安装选项。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-27 15:36:51

您已经使用GAV ():com.example:projectA:1.0添加了一个依赖项。

当您使用GAV在gradle中声明依赖项时,gradle假设它应该在它所知道的所有可用的Maven或Ivy存储库中查找该依赖项。我认为它无法解决GAV的原因是,您从未将项目A发布到构建搜索的任何存储库中。

你有两条出路:

  1. 将项目A的输出(jar文件)发布到Maven repo。您需要应用Maven发布插件。例如,您可以使用"gradle publishToMavenLocal“发布到本地回购。
  2. 将该依赖项声明为项目依赖项,并保留您的项目作为同一父项目的子项目。。您将声明该依赖项为compile project(':projectA')

后者可能要容易得多。

顺便说一句,Buildship本身可能与这个问题没有什么关系,而是使用依赖项跟踪构建系统(如Gradle或Maven )的一个普遍问题。我记得在3.0和更高版本中,我看到了一些关于Gradle如何更好地解决这个问题的参考,但是我现在似乎找不到这个链接。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39728355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档