首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eclipse:结合Groovy和Gradle编辑支持

Eclipse:结合Groovy和Gradle编辑支持
EN

Stack Overflow用户
提问于 2018-10-03 12:11:32
回答 1查看 507关注 0票数 0

我知道在IntelliJ IDEA中有非常好的Groovy/Gradle支持,但是我正在试图找出Eclipse目前可以走多远。这是我目前的设置:

  • Buildship插件:默认情况下包括并向Elipse添加基本的Gradle机制,几乎不支持编辑器(代码完成、文档、格式化等)。
  • EGradle编辑器插件:理解Gradle DSL,并为Gradle API提供代码完成/文档,但不了解它本身。
  • Groovy开发工具插件的关键:良好的Groovy支持与代码完成,格式化的Groovy代码等。

现在缺少的是最后两点的结合。每个插件的编辑器可以理解Gradle或Groovy,但不能同时理解两者。我已经在Groovy插件中看到了对DSL描述符的一些支持,但我在互联网上找不到Gradle的DSL描述符。我发现在STS (Spring by Pivotal)中现在已经不再推荐的Gradle集成插件中有一些对这样的DSL描述符的支持,该插件后来又被删除了(关键字: org.springsource.ide.eclipse.gradle.dsld)。

因此,总的问题大概是: Groovy开发工具插件是否有一个分级DSLD?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-09 17:06:44

可以将添加到Eclipse中。在撰写这篇文章时,Eclipse的Groovy开发工具没有内置的任何内容。

您需要在Groovy编辑器中打开Gradle构建脚本,而不是默认的Gradle编辑器。

第一个障碍是将分级类型提供给DSLD。这可以通过在Gradle依赖项块中添加"gradleApi()“依赖来实现。然后,您可以将其作为Groovy文件在您的项目中试用(此时它有点简陋):

代码语言:javascript
复制
def isBuildScript = fileExtension('gradle') & (~fileName('settings.gradle'))

contribute(isBuildScript & isThisType()) {
  delegatesTo 'org.gradle.api.Project'

  method name: 'apply', type: void, namedParams: [plugin: String]
}

contribute(isBuildScript & enclosingCallName('configurations') & inClosure() & currentType('org.gradle.api.Project')) {
  setDelegateType('org.gradle.api.artifacts.ConfigurationContainer')
}

contribute(isBuildScript & enclosingCallName('dependencies') & inClosure() & currentType('org.gradle.api.Project')) {
  setDelegateType('org.gradle.api.artifacts.dsl.DependencyHandler')
}

contribute(isBuildScript & enclosingCallName('repositories') & inClosure() & currentType('org.gradle.api.Project')) {
  setDelegateType('org.gradle.api.artifacts.dsl.RepositoryHandler')
}

contribute(fileName('settings.gradle') & isThisType()) {
  setDelegateType('org.gradle.api.initialization.Settings')
}

在这里有更多的讨论:https://github.com/gradle/gradle/issues/6089

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

https://stackoverflow.com/questions/52626774

复制
相关文章

相似问题

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