【问题标题】:Reference Groovy domain class from Java class using Eclipse?使用 Eclipse 从 Java 类中引用 Groovy 域类?
【发布时间】:2008-12-28 01:39:30
【问题描述】:

如何使用 Eclipse 从 Java 类中引用 Groovy 域类?

我已将我的域类放入包中:

package com.me.myproject
public class Person {
    String name
    int age
}

然后在我的 Java 类中,我尝试引用 com.me.myproject.Person。这适用于grails run-app(命令行),但不适用于 Eclipse。 Eclipse 无法解析 Groovy 域类。

我正在运行带有最新 Groovy 和 Grails Eclipse 插件的 Eclipse 3.4.1:

  • Grails Eclipse 功能 0.1.0 20081120_2330
  • GroovyFeature 1.5.7.20081120_2330

我尝试将 Eclipse 默认输出文件夹设置为与 Groovy 编译器输出位置相同。我还尝试启用和禁用“禁用 Groovy 编译器生成类文件”设置。我也试过不把我的任何课程放在一个包里。这些都不起作用。

【问题讨论】:

    标签: java eclipse grails groovy


    【解决方案1】:

    我也无法在 Eclipse 中完成这项工作。直到春天得到 groovy / grails eclipse 插件来做一些除了颜色编码之外的事情,你最好的选择是使用像 Intelij 这样的 IDE,它目前具有最好的 groovy 支持。

    【讨论】:

      【解决方案2】:

      你试过Groovy Plugin吗?它可能会这样做。

      【讨论】:

        【解决方案3】:

        虽然我没有尝试过,但我相信您需要将 Domain 文件夹添加为 Java 构建路径中的 src 文件夹。

        右键单击项目选择属性。单击 Java Build Path,然后单击 Source 选项卡。 单击添加文件夹并确保您的项目/grails-app/domain 在路径中。

        如果这不起作用,那么你是对的,我不确定问题是什么。

        仅供参考,Spring-Source 是这样一个 Eclipse 赞助商,我期待在不久的将来有一个大大改进的 Eclipse 插件。但你是对的。现在,这很烦人。

        【讨论】:

          【解决方案4】:

          我也无法使用 Groovy 和 Java 的相同输出文件夹使其工作,但如果您使用不同的输出文件夹,它似乎确实可以工作。

          这就是我所做的。通过项目属性对话框:

          1. Groovy 项目属性 下取消选中复选框禁用 Groovy 编译器生成类文件 (插件开发人员注意:请在复选框标签上使用正面措辞。“生成 Groovy类文件”比“禁用禁用选项”更容易理解。)
          2. Groovy 编译器输出位置 输入 web-app/WEB-INF/groovy-classes
          3. Java Build Path -> Libraries 下添加 Groovy 类文件夹。

          您现在应该可以使用从 Java 编译的 Groovy 类了。

          我认为这更像是一种 hack 而不是解决方案,但它现在正在为我做这项工作。

          【讨论】:

            【解决方案5】:

            请升级到 groovy-eclipse 插件的 V2,因为这个问题已经修复。该插件的 V2 不构建存根,并且在 Java 和 Groovy 之间的循环依赖方面没有任何问题。该插件现在附带一个功能补丁,用于修补 JDT 编译器,以便它可以原生地处理 groovy 文件。

            【讨论】:

              【解决方案6】:

              我不确定引用文件或文件夹是否是好方法。您应该使用模块化。因此,您的域类将存储在单独的“项目”中。可以通过创建插件来做到这一点。你可以找到很好的解释和源代码here

              【讨论】:

                【解决方案7】:

                看来我参加这个聚会有点晚了,但我遇到了同样的问题。通过将项目转换为 Groovy 项目,我能够解决从 Java 类引用 Groovy 域类的问题。说明如下:

                1. 在项目资源管理器中右键单击项目
                2. 配置菜单中选择转换为 Groovy 项目

                我的环境如下:

                • Eclipse Kepler 服务版本 1,内部版本 ID:20130919-0819
                • Groovy-Eclipse 插件 2.9.0.xx-20130828-1400-e43-RELEASE
                • Grails IDE 3.4.0.201310051518-RELEASE(我认为没有必要)

                最后,我没有弄乱任何“禁用 Groovy 编译器生成类文件”选项。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2012-08-23
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多