2015-06-27 64 views
29

Eclipse Mars最近刚刚发布,我觉得要试一试。它通过Buildship列出了与Gradle更紧密的集成。如何在Eclipse中使用Buildship刷新项目依赖关系?

随着月神我使用Gradle Integration for Eclipse (4.4),我发现这很容易与我正在尝试做的事情;我可以将Gradle“nature”添加到现有项目中,而无需删除项目并重新导入它,就像我在Buildship中一样,它会自动将我在build.gradle中声明的所有依赖项放入项目的类路径中。

使用Buildship时,我没有看到任何将现有项目配置为Gradle项目的选项,并且找不到使项目中的构建脚本中指定的依赖项包含在项目的类路径中的依赖项。

我试着为Eclipse Mars安装原始插件(GIfE 4.4),并且在重新启动Eclipse之后,它自动为我做了所有这些。我想知道的是,如果有一种方法可以通过Buildship单独完成这项工作,因为现在,虽然这一切都可行,但这是一个非常有趣的设置。我的项目的下拉菜单如下:

除了看起来有点古怪,它实际上是一个相当不错的设置,因为它结合GIfE的自动依赖管理与直接从Eclipse中运行摇篮任务的能力Buildship提供。

回答

49

更新日食看到那么应该是简单的依赖关系:

right click on project -> gradle -> refresh all 

更新在buildship 1.0.16

目前需要通过删除和进口环跳您第一次使用现有的具有buildship的gradle项目。您现在可以使用添加摇篮自然的选择:

right click on project -> configure -> Add Gradle Nature 

“刷新摇篮工程”现在也上显示时,任何.gradle文件右击以及在摇篮编辑器的右键菜单。下面source

请参阅更新然而有时你可能会发现,当你的项目是进口的,它并没有获得新的项目和外部相关的类路径进入你通常能够在您的Project Properties -> Java Build Path -> Libraries看 如果这确实是遗失,以下内容添加到您的项目.classpath文件和所有善良的gradle应该开始工作:

<classpathentry exported="true" kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/> 

更新在buildship 1.0.16

摇篮类路径容器恢复如果它丢失了

当转换现有的Eclipse Java项目到摇篮的摇篮类路径容器失踪。现在总是在项目是Java项目时添加它。

+1

有人到达这里。这是最好的答案,应该包含在官方文档中。 –

+4

解决了我的问题:关闭了我的项目,添加了条目,并且当我重新打开它时,依赖关系在那里。非常感谢保罗!我使用的是最新版本1.0.5,并且有点惊讶,像这样的大问题尚未得到解决。有没有人报告过这个问题呢? – IGx89

+0

作为尼古拉斯Modrzyk已经提到,这应该包括在官方文档! –

4

我同意Buildship有点灾难。文档非常稀疏,只有有限的示例和最少的用户指南。你会认为记录从Eclipse的Gradle Integration(4.4)的过渡将是一件容易的事,但我想不是。我也没有一个线索如何使用Buildship,除此之外我手动执行了一些任务,并将完全合格的路径放在我的.classpath文件中。考虑到许多项目是通过变更控制系统共享的,这很荒谬。

+0

您可以使用Eclipse pathVariables设置避免在大多数情况下完全合格的路径: '{日食pathVariables 'GRADLE_USER_HOME':gradle.gradleUserHomeDir}' 参见:https://docs.gradle.org /current/dsl/org.gradle.plugins.ide.eclipse.model.EclipseModel.html 这解决了我们共享项目的大部分问题。作为手动步骤,您还必须将相应的路径添加到Eclipse:http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Fconcepts%2Fconcept-classpath- variables.htm –

+1

即使我同意这种说法,这也不是一个正确的答案。 –

2

目前在Buildship中没有实现“转换为Gradle项目”。但是,如果您使用Gradle导入向导删除项目并重新导入它,则应该看到具有适当性质的相同确切项目和类路径容器。最重要的是,如果您的工作空间中有一个Gradle项目并更新了构建脚本中的依赖关系,则可以通过右键单击项目并选择Gradle > Refresh projects来刷新类路径容器。

您遇到的类似问题在Gradle论坛中讨论:discuss.gradle.org/t/adding-dependencies-to-projects/10415。

我们还有一个bug专用于此功能请求:bugs.eclipse.org/bugs/show_bug.cgi?id=465355。请投票赞成并在那里分享您的想法。

关于到文档:这是真的,我们没有提供中央Eclipse帮助系统的正式文件,但也有一些资源,解释目前的功能:

+0

在当前的Buildship版本中,build.gradle文件上也提供了选项Gradle> Refresh projects。 – vogella

4

对任何人,如果你没有得到

右键点击项目 - > gradle

做完@PaulAdamson回答中提到的步骤之后的链接。尝试这个。

  1. 在你的build.gradle添加apply plugin 'eclipse';
  2. 在Eclispe的关闭项目。
  3. 从命令行运行gradle build,然后在eclipse中重新打开项目。

    现在gradle链接应该可用右键单击。

相关问题