gpt4 book ai didi

java - XTEND/JAVA自动生成eclipse项目

转载 作者:行者123 更新时间:2023-12-01 11:36:53 25 4
gpt4 key购买 nike

我在 Eclipse 中有一个 XText 项目,其中实现了我自己的语法文件。使用doGenerate函数我生成了几个.java文件。到目前为止,一切都很顺利。

我的问题是每次生成文件时我都需要执行以下操作:

  1. 将生成的文件复制到我的 Eclipse 项目目录
  2. 在 Eclipse 中创建新的 Java 项目
  3. 将生成的文件导入到项目中

我希望能够在每次调用 doGenerate 函数时自动执行任何或所有这些步骤,有没有办法使用 xtend/java 代码来做到这一点?我应该提到,我的语法要求用户指定项目目录+名称,以便在运行时从 doGenerate 函数中获得该信息。

代码最好能够检测是否已经存在同名的项目,如果可能的话,在运行时更新打开的 Eclipse 实例中的内容。

或者,如果这不能用 xtend/java 来完成,可以用插件来完成吗?

最佳答案

创建新项目必须通过eclipse的资源API来完成。如果您可以,在代码生成器中具有该依赖项,您可以简单地将依赖项添加到 org.eclipse.core.resources 并执行类似的操作

ResourcesPlugin.getWorkspace().getRoot().getProject("myProject").create(null)

如果您不想要这种依赖关系,因为您从其他环境(例如 Maven)运行代码生成器,则需要将项目创建抽象到它自己的类中,注入(inject)它并为 Eclipse 和非 Eclipse 提供单独的实现.

Xtext (IFileSystemAccess) 的代码生成器 API 将在后台使用 Eclipse 资源 API,以确保所有通知等按预期工作,并且您无需手动刷新。因此,这里不需要不同的实现,因为 Xtext 会处理这个问题。

关于java - XTEND/JAVA自动生成eclipse项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29878334/

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