gpt4 book ai didi

eclipse - 如何使用Gradle构建Xtext Eclipse插件?

转载 作者:行者123 更新时间:2023-12-03 05:37:47 26 4
gpt4 key购买 nike

我已经用Xtext 2.12编写了DSL,而我的Xtend 2.12代码生成器由此生成了Java 8代码。我正在使用Eclipse Oxygen.3a。我首先创建了一个作为Eclipse插件的Xtext项目,并且一切正常,但是我现在想让Gradle构建一切。
为此,我将Gradle性质添加到了Xtext项目中,并启动了“gradle init”以生成build.gradle和settings.gradle文件。我发现了Xtext Gradle插件(Xtext Builder和Xtend Compiler)的存在,并使用这些插件的文档编写了build.gradle脚本内容,但是我并不了解所有内容,不足为奇的是,我的构建器无法正常工作。您能帮我正确设置此生成器吗?

plugins {
id 'org.xtext.builder' version '2.0.3'
id "org.xtext.xtend" version "2.0.3"
}

apply plugin: 'java'
apply plugin: 'org.xtext.xtend'
apply plugin: 'eclipse'

sourceSets {
main.java.srcDirs = ['src','xtend-gen']
main.xtendOutputDir = 'xtend-gen'
}

repositories {
mavenCentral()
jcenter()
}

dependencies {
compile group: 'org.eclipse.xtend', name: 'org.eclipse.xtend.lib', version: '2.16.0'
compile group: 'org.eclipse.xtext', name: 'org.eclipse.xtext', version: '2.16.0'
compile group: 'org.eclipse.emf', name: 'org.eclipse.emf.codegen.ecore', version: '2.15.0'
compile group: 'org.eclipse.xtext', name: 'org.eclipse.xtext.xtext.generator', version: '2.16.0'
testCompile group: 'org.eclipse.xtext', name: 'org.eclipse.xtext.xbase.testing', version: '2.16.0'
}

xtext {
languages {
mapy {
setup = 'com.mchp.mapy.MapyStandaloneSetup'
generator.outlet.producesJava = true
}
}
sourceSets {
main {
srcDirs 'src','xtend-gen'
output {
dir(xtext.languages.mapy.generator.outlet, 'src-gen')
}
}
}
}

xtend {

}
  • sourceSets块应位于何处(内部或外部)。
    xtext块)?
  • xtext块内容正确吗?
  • 我应该写什么到xtend块中?还要宣布吗?
  • 要启动MWE2启动器并运行的Gradle任务是什么?
    然后是代码生成器?

  • 以下是我的Eclipse项目组织的快照。
    在此先感谢您的时间!

    enter image description here

    最佳答案

    也可以使用Eclipse PDE构建Xtext插件。我创建了一个专用的Eclipse部署来减小规模(最小化然后安装PDE,JDT和Xtext项目),并将其发布到 Artifact 存储库中。然后,只需编写Gradle任务(或插件)以拉下Eclipse,将其提取到构建目录,在Xtext Eclipse项目中进行复制(在复制之前使用Xtext Gradle插件来构建DSL)并最终调用在Eclipse中使用Java命令和AntRunner的Ant PDE任务。输出应该是一个基本的更新站点,您可以从该站点在本地安装插件,也可以发布到Artifact存储库以进行共享。
    需要对Eclipse PDE构建过程有充分的了解。我在“插件开发环境指南>任务> PDE Build”部分下的Eclipse帮助(https://help.eclipse.org/2020-06/index.jsp)中找到了所需的大部分内容。
    在Xtext版本升级期间,我遇到了一些问题,其中包含各种依赖性冲突和Eclipse错误。通常可以在Xtext开发团队的帮助下解决这些问题,然后在Gradle中强制使用某些依赖项。
    不幸的是,我无法共享任何构建版本,因为它是专有代码,但是我希望上面的解释对需要自动化该过程的任何人都足够。当然,这并不是一件容易的事情。

    关于eclipse - 如何使用Gradle构建Xtext Eclipse插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54868451/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com