繁体   English   中英

Gradle eclipse 任务没有添加适当的 gradle 性质

[英]Gradle eclipse task doesn't add proper gradle nature

我有以下项目结构:

  • 根梯度( build.gradle
    • project-group1(无构建文件)
      • 项目 1 ( build.gradle )
      • 项目 2 ( build.gradle )
      • ...
    • project-group2(无构建文件)
      • ...

碰巧我不得不经常重新创建 Eclipse 项目。 我运行命令:

gradle cleanEclipse eclipse

多次运行后,“eclipse”任务停止按预期工作。 也就是说,它不再向项目添加 gradle 性质并且不识别

sourceCompatibility = 1.6

不再尝试使用 1.8 版 Java 构建所有内容。

我在根build.gradle添加了以下build.gradle

allprojects {
    sourceCompatibility = 1.6
    eclipse.project {
        natures 'org.springsource.ide.eclipse.gradle.core.nature'
    }
    // more stuff here ...
}

这有助于根项目,但对任何其他项目没有影响。 我在子项目中添加了同样的东西,结果同样不令人满意。 我不得不说,即使在将自然添加到根项目并且 Gradle 插件选项再次可用于根之后,我仍然没有看到“G”图标。

所以看起来我的 gradle 设置有两个问题。

  1. gradle 性质的消失。 运行几次后,Eclipse 停止识别 gradle 项目。 如果工作正常,我什至不会面临第二个问题。

  2. 我的 gradle 构建文件或项目布局存在一些问题,因为我的设置似乎对子项目无效。

  3. 具有恢复的 Gradle 性质的项目缺少“G”图标。

使用Buildship:Gradle的Eclipse插件我不得不使用自然字符串'org.eclipse.buildship.core.gradleprojectnature'

例如:

allprojects {
    eclipse.project {
        natures 'org.eclipse.buildship.core.gradleprojectnature'
    }
}

安装Eclipse的Gradle插件

然后使用Eclipse菜单: File - > Import ...导入Gradle项目。 它将添加Gradle Nature。 还有2个额外的Eclipse视图,一个用于快速运行Gradle任务。 一个用于Gradle输出执行的任务。

提示:在导入现有Gradle项目之前,请创建一个New Gradle项目,以查看Gradle插件是否按预期工作。

新Gradle项目

  • 使用Eclispe菜单: 文件 - >新建 - >其他...
  • 选择向导: Gradle - > Gradle Project
  • 输入项目名称
  • 按“ 完成 ”按钮

这应该设置一个最小的Gradle项目。

如果存在评估阶段竞争条件,则可以使用afterEvaluate限定符将其消除。 我会尝试:

allprojects {
    afterEvaluate {
        eclipse.project {
            natures 'org.springsource.ide.eclipse.gradle.core.nature'
        }
    }
}

我认为你必须为你的系统环境设置gradle。 脚步 -

  • 从gradle网站安装Gradle。
  • 转到eclipse首选项设置gradle中的主路径EnIDE如“C:\\ gradle-2.3”
    或者您安装的任何目录。
  • 还要确保添加系统环境变量的路径。

在此输入图像描述

在设置gradle中>>

 include 'Device', 'Secugen', 'Morpho', 'NIDVSADesktop'

这里NIDVSADesktop是我的根项目。 在根项目gradle中

dependencies {
  compile project(':Secugen') 
  compile project(':Morpho')

}

Secugen和Morpho是我的2个子项目

删除 Gradle Nature close eclips 然后转到项目文件夹结构并运行命令“./gradlew clean build -x test cleanEclipse eclipse”然后打开 eclipse 并刷新项目

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM