编译错误 - Groovy 和 Lombok

2024-01-08

这是我的 Maven 命令

mvn clean compile test-compile test

for 这个项目 https://github.com/prystasj/lombok-groovy-example

但我面临着

[错误] 不再有标记 - 无法解析错误消息:Groovy:无法解析类 Delegate ,无法找到注释类 [错误] 12. D:\Projects\lombok-groovy-example-master\src\main\groovy\prystasj\lombok\example\groovy\Rocket.groovy 中出现错误(第 5 行) [错误]@数据

mvn --版本

Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T22:39:06+03:00)

java版本

java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

来自存储库的代码

<properties>
    <groovy.version>2.0.5</groovy.version>
    <java.version>1.6</java.version>
    <lombok.version>0.11.4</lombok.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <build>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
    <compilerId>groovy-eclipse-compiler</compilerId>
    <fork>true</fork>
    <verbose>false</verbose>
    <source>${java.version}</source>
    <target>${java.version}</target>
    <encoding>${project.build.sourceEncoding}</encoding>
    <compilerArguments>
    <javaAgentClass>lombok.core.Agent</javaAgentClass>
    </compilerArguments>
    </configuration>
    <dependencies>
    <dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-eclipse-compiler</artifactId>
    <version>2.7.0-01</version>
    </dependency>
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>${lombok.version}</version>
    </dependency>//...

类(git 上的文件不同!)

@Data
public class Rocket {
}

您不应该将 Lombok 用于 Groovy,它只能与 Java 一起使用。

Groovy 有内置注释@Canonical这是你想要的:

  • 它创建了有用的 equals、hashCode 和 toString 方法
  • 它创建无参数和元组构造函数

所以在你的情况下使用:

@Canonical
public class Rocket {}

此外,您不需要为 Groovy 中的字段创建 getter 和 setter。如果您向类中添加任何字段,Groovy 会创建 getter 和 setter http://groovy-lang.org/objectorientation.html#_fields_and_properties.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

编译错误 - Groovy 和 Lombok 的相关文章

  • SharePoint 2010 Web 服务上的 Java JBoss 401 错误

    我的代码在 Eclipse IDE 中测试时运行成功 我正在使用生成的 Copy wsdl 通过 Web 服务连接到 MS SharePoint 2010 当我在 JBoss 服务器上部署代码 运行 Adob e LifeCycle 时 我
  • Spring MVC 和 Struts MVC 之间的区别 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Spring MVC 和 Struts MVC 之间的主要区别是什么 Spring MVC 和 Struts 之间的主要区别是 Spr
  • rmi类找不到异常

    我使用 java rmi 编写了一个简单的项目并导出到可执行 jar 文件 当我尝试运行它时 有时会出现异常 有时会起作用 当我指定 Djava rmi server codebase file serverClasses 时 它似乎没有正
  • sqrt() 函数不适用于变量参数[重复]

    这个问题在这里已经有答案了 我不知道我是否遗漏了一些明显的东西 但似乎我无法计算 a 的平方根variable在C中 sqrt 函数似乎只适用于常量 这是我的代码 include
  • 如何用 Java 制作 Windows 7 工具提示

    我一直在网上到处寻找 但没有找到这个小问题的答案 在 Windows 7 中 我认为在 Vista 中 您有一个漂亮的圆形银色工具提示 它看起来比旧的黄色盒装蹩脚工具提示要好得多 下面的 How do I make a Windows 7
  • 使用 PowerMock 和 TestNG 模拟单个静态方法

    class StaticClass public static String a return a public static String ab return a b 我想嘲笑StaticClass a以便它返回 x 并致电StaticC
  • 如何修复运行 Android 模拟器时出现 GPU Driver Issue 错误

    我的 Android 模拟器几周前运行良好 但现在出现错误 当我运行代码时 GPU 驱动程序问题错误对话框与模拟器一起弹出 当我单击 确定 时 Android 模拟器不会按预期运行应用程序 错误如下 Your GPU driver info
  • 如何在 WebSphere Liberty Batch 中配置事务超时?

    的作用是什么javax transaction global timeout 我是否需要实施检查点 超时 中的方法检查点算法 服务器配置级别有什么东西吗 它如何与应用程序级别的设置进行交互 2016年12月2日编辑 重新设计并解释了为应用程
  • 在字节数组上进行右位旋转/循环移位的最快方法是什么

    如果我有数组 01101111 11110000 00001111 111 240 15 移位 1 位的结果是 10110111 11111000 00000111 183 248 7 数组大小不固定 移位范围为 1 到 7 含 目前我有以
  • Jetty 提供静态内容所需的最少文件集?

    背景 免责声明 I have veryJava 经验很少 我们之前在 Ant 构建期间使用了 Jetty 6 的包装版本来处理按需静态内容 JS CSS 图像 HTML 因此我们可以使用 PhantomJS 针对 HTTP 托管环境运行单元
  • 使用 JPA 标准的“不在”约束

    我正在尝试写一个NOT IN约束使用JPA Criteria 我尝试过这样的事情 builder not builder in root get property1 虽然我知道这行不通 在上面的语法中 如何添加集合 列表property1会
  • BODMAS系统的加法和减法

    我一直在构建一个简单的公式计算器 但一直被加法和减法困扰 正如您应该知道的 在计算方程时 您遵循优先级算术规则 即括号 顺序 幂函数 除法 乘法 加法和减法 问题是加法和减法具有相同的优先级 因此您可以从左到右阅读 到目前为止 这是我的代码
  • CXF 增加连接池大小而不更改 http.maxConnections

    最近我被要求将 CXF 配置为与我们旧的 XFire 服务相同的参数 这些参数之一是Keep Alive timeout 60 max 20 然而 我做了一些研究 看来 CXF 使用 JVMHttpURLConnection引擎盖下的对象
  • 枚举

    我试图拥有一组扩展通用接口的枚举 例如 interface Fooable void someCommonMethod enum E1 implements Fooable some enumuerations and a definiti
  • 如何在 Windows 上使用 Java Hotspot JVM 禁用小型转储 (mdmp) 文件生成

    目前 我有一个已部署的可执行 jar 文件 该文件在崩溃时会创建大型 7 Gb 小型转储文件 我想要一个导致崩溃原因的文本表示 而不是 JVM 状态的二进制文件 我尝试使用中找到的信息这个 CodeRanch 帖子 http www cod
  • 不幸的是 Project_Name 已停止

    我有一个简单的应用程序 您可以在文本视图中输入文本并按提交 它会在另一个活动中显示文本 然而 当我按下提交时 给我消息 不幸的是 发送已停止 我查看了SO上的其他线程 但是不幸的是 myfirstproject 在 java 中停止工作错误
  • Java:易失性足以使类线程安全?

    我有一个关于 Java 中 volatile 语句的问题 请看这个构造的例子 class Master Foo is a class with thread safe methods public volatile Foo foo clas
  • 如何将 printStackTrace() 中的异常写入 Java 中的文本文件?

    我需要用 Java 捕获文本文件中的异常 例如 try File f new File catch FileNotFoundException f f printStackTrace instead of printing into con
  • Cassandra 会话与集群 有什么可分享的?

    考虑 Cassandra 的 Session 和 Cluster 类 Java 驱动程序 我想知道有什么区别 在 Hibernate 中 每次都会创建一个会话并共享会话工厂 从许多来源我了解到 它被认为是创建一个会话并在多个线程之间共享它
  • Java编程编译jar

    我有一个文本文件中的java源代码 必须在源代码中输入一些自定义的硬编码变量 然后将其转换为 jar 这是可行的 但是当我运行 jar 时 找不到 Main 类 当我用 WinRAR 解压 jar 文件时 我似乎找不到错误 当我通过 cmd

随机推荐

  • 如何分发Eclipse中构建的java项目?

    到目前为止 我一直在使用Netbeans IDE对于 Java 应用程序 要分发 Netbeans 中制作的应用程序 我只需单击clean and build它将应用程序打包到 jar 文件中 该文件位于dist目录 现在我已经做了一个ja
  • 如何将已写入 xml 文件的 OpenCV Mat 转换回图像?

    我编写了一些代码来生成一个 xml 文件 其中包含来自 OpenCV 中的 Mat 文件的 RGB 数据 我想根据 xml 文件中的数据点在 MATLAB 中重新创建此图像 然而 我不确定 xml 文件的格式 因为当我打开它时 它看起来像这
  • Java(Android):如何在没有位图的情况下缩放可绘制对象?

    我需要缩放按钮的背景图像 但无法将其转换为位图 这是现在的代码 int height 50 int width 80 Button b new Button this b setBackgroundResource R drawable b
  • 即使负载因子限制没有被打破,为什么 std::unordered_set 也会被重新哈希?

    根据参考参数 http en cppreference com w cpp container unordered set emplace 仅当新元素数量大于时才会发生重新散列max load factor bucket count 此外
  • UIGestureRecognizer 通过 UIScrollView

    当可以水平滚动时 我需要用 3 个手指检测 UIScrollView 上的左右滑动 我需要用 1 根和 2 根手指保留所有交互 是否可以在不重写所有手势识别的情况下做到这一点 谢谢 这是可能的 向您的 UIScrollView 添加滑动手势
  • 如何在bash脚本中循环?

    我在 Linux 下的 bash 脚本中有以下几行 mkdir max15 mkdir max14 mkdir max13 mkdir max12 mkdir max11 mkdir max10 将它们放入循环的语法如何 这样我就不必编写数
  • Windbg内存映射?

    如何在 Windbg 中获得类似于 Ollydbg 内存映射功能的内存映射 我想查看按顺序显示加载到每个范围的内容的地址空间列表 最好带有指示的内存保护 这是 Ollydbg 内存映射的屏幕截图 address准确显示此信息 它可以在用户模
  • 为什么当 Count 返回 0 时 HasMoreResults 返回 true?

    我正在使用 Microsoft Azure DocumentDB v 1 5 2 尚未准备好升级 IDocumentQuery ExecuteNextAsync Count 0 but IDocumentQuery HasMoreResul
  • 无法以二进制数据形式获取 PDF 文件

    我正在尝试从以下位置获取 PDF 文件 URL https 域名 xyz id download https domain name xyz id download 其中它不指向直接的 pdf 文件 并且每个唯一的文件都会被下载 解释特定的
  • 将 LoDash 与 EmberCLI 结合使用

    有谁有使用 LoDash 的 Ember CLI 构建的 简单 ember app 项目的工作示例吗 例如 我想在我的路由和控制器中使用 lodash someLodashFunc 我还没有在网上看到任何帖子 文章对如何做到这一点给出清晰的
  • MySQL 订单问题

    我有一个非常简单的 SQL 查询 但缺少一些东西 而且我还没有找到这个问题的答案 问题是我选择了一些具有多个 id 的字段 并且我希望结果按此特定顺序排序 查询如下 SELECT content FROM content WHERE use
  • Gsettigs 和 dconf 设置热键

    Hello 我需要在 ubuntu 12 10 中设置一个热键 我使用 gsettings dconf gsettings set org gnome settings daemon plugins media keys custom ke
  • 使用 WinSCard 库获取 mifare 卡序列号

    我正在开发一个需要读取 Mifare 卡序列号的应用程序 我使用的语言是 C 我是 mifare 读卡器编程的新手 所以很抱歉问了愚蠢的问题 首先我想知道Mifare UID和Mifare序列号是否有不同 我已经在 WinSCard 库的帮
  • Objective-C 中强弱的区别

    两者有什么区别strong and weak in property对象指针的声明 另外 什么是nonatomic mean 考虑气球方面的强引用和弱引用可能会有所帮助 只要至少有一个人抓住气球上的一根绳子 气球就不会飞走 持有字符串的人数
  • 获取 30 天前的日期和时间

    我想计算从现在 例如 14 月 30 日 23 06 到 30 天前 例如 14 月 1 日 23 06 的 php 过去 30 天时间段 我写了这篇文章 其中当前日期时间在 d1 中 过去 30 天的日期时间在 d2 中 但不知何故我没有
  • 整数到字节的转换

    假设我有一个整数 13941412 我希望将其分成字节 该数字实际上是 0x00bbggrr 形式的颜色 你会怎么做 在 c 中 您可以将数字转换为 BYTE 然后移动位 Python 中如何转换为字节 使用按位数学运算符 字节 已经存在
  • Spark的HiveContext内部是如何工作的?

    我是 Spark 新手 我发现使用HiveContext我们可以连接到hive并运行HiveQLs 我运行它并且它起作用了 我的疑问是Spark做到了spark jobs 也就是说 它使用HiveContext仅用于从HDFS访问相应的hi
  • 使用 Gulp 读取、重建和替换文件中的内容块的最有效方法是什么?

    我正在创建一个可以读取任何文件 php jsp html 等 定位块标签并根据块标签中的信息进行替换的系统 我将写入我的文件的代码 testObject name jonathan number 3 male true 所需更换 h1 Jo
  • 在 Visual Studio 中,我可以在调试时禁用对应用程序进行签名吗?

    在 Visual Studio 的项目属性 gt 签名选项卡中 我已使用代码签名证书对我的项目进行了签名 然而 在我的团队中 我是唯一拥有代码签名证书的人 即使我们处于多开发人员环境中 当其他开发人员尝试 开始调试 时 他们会收到以下消息
  • 编译错误 - Groovy 和 Lombok

    这是我的 Maven 命令 mvn clean compile test compile test for 这个项目 https github com prystasj lombok groovy example 但我面临着 错误 不再有标