Gradle 如何编译Xtend+;带渐变的Java类

Gradle 如何编译Xtend+;带渐变的Java类,gradle,xtend,Gradle,Xtend,我想将一个同时包含Java和Xtend类的项目迁移到Gradle。不幸的是,我找不到实现Xtend部分自动编译的任何可能性 我非常了解Xtext-Gradle插件(),据我所知,它可以钩住Java插件的编译步骤 但是,CompileJava任务首先无法完成,因为缺少Xtend类(尚未生成…)会导致各种引用错误。一般来说,应选择合适的工作流程 编译Java并忽略错误 编译Xtend 重新编译Java 为了让它正常工作,我需要一种编译Java并忽略错误的方法,而不会导致任务失败,我还没有找到任何解决

我想将一个同时包含Java和Xtend类的项目迁移到Gradle。不幸的是,我找不到实现Xtend部分自动编译的任何可能性

我非常了解Xtext-Gradle插件(),据我所知,它可以钩住Java插件的编译步骤

但是,CompileJava任务首先无法完成,因为缺少Xtend类(尚未生成…)会导致各种引用错误。一般来说,应选择合适的工作流程

  • 编译Java并忽略错误
  • 编译Xtend
  • 重新编译Java

  • 为了让它正常工作,我需要一种编译Java并忽略错误的方法,而不会导致任务失败,我还没有找到任何解决方案。然后我需要重新执行编译,我想这可能需要一些其他技巧来绕过Gradle的最新检查机制。还是我完全错了?

    正确的顺序应该是首先生成Xtend源代码,然后编译所有内容。只需添加插件并添加新的源集,如下所示

    plugins {
      id "org.xtext.xtend" version "1.0.0"
    }
    
    apply plugin: 'org.xtext.xtend'
    
    sourceSets {
      main.xtendOutputDir = 'xtend-gen'
      test.xtendOutputDir = 'test/xtend-gen'
    }
    

    构建之后应该可以工作。

    您应该使用“org.xtext.xtend”版本“1.0.17”很好,它可以工作(除了输入错误,它是
    apply plugin:'org.xtextext.xtend'
    )。我不知道为什么它没有运行在第一位,但无论如何谢谢你!答案是固定的。