Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse IDE中的Lombok交互行为_Java_Eclipse_Lombok - Fatal编程技术网

Java Eclipse IDE中的Lombok交互行为

Java Eclipse IDE中的Lombok交互行为,java,eclipse,lombok,Java,Eclipse,Lombok,我很好奇Eclipse或其他IDE是如何工作的。我发现,自版本0.10以来,他们放弃了ECJ的AbstractProcessor,完全使用javaagent和字节码修改 如果我使用一些没有语法检查+javac和-javaagent的编辑器,这会很好地工作,但是对于Eclipse来说,就好像我添加了-javaagent来构建配置一样,这是不可能的,因为在使用内部ECJ的增量构建过程中没有使用它。所以,若你们使用了一些不存在于代码中的方法,但在字节码插装之后,它只会抛出错误 我的问题是:这是如何处理

我很好奇Eclipse或其他IDE是如何工作的。我发现,自版本0.10以来,他们放弃了ECJ的AbstractProcessor,完全使用javaagent和字节码修改

如果我使用一些没有语法检查+javac和-javaagent的编辑器,这会很好地工作,但是对于Eclipse来说,就好像我添加了-javaagent来构建配置一样,这是不可能的,因为在使用内部ECJ的增量构建过程中没有使用它。所以,若你们使用了一些不存在于代码中的方法,但在字节码插装之后,它只会抛出错误

我的问题是:这是如何处理代码中不存在的方法在代码中是可见的而没有任何错误的

更新:

由于chrylis提供了有关从.class文件中获取方法的信息,我的问题可以缩短为以下几点:


如何使用-javaagent+objectweb.asm/javaassist/etc。通过Eclipse中的自动构建,生成的方法/字段/etc将通过代码完成、方法大纲视图等实现。

使用lombok注释创建java模型的IDE需要包含某种插件来处理lombok生成的方法

要在不同的IDE和打包管理器中包含插件,请参阅此链接以获取更多信息:

马文或常春藤:龙目山位于马文中心。更多… Javac:只需将lombok.jar放在类路径上。 NetBeans:只需将lombok.jar放在类路径上并启用注释处理。更多… Eclipse和变体:将lombok.jar作为java应用程序运行,即双击它,通常用于安装。还要将lombok.jar添加到项目中。支持的变体:Springsource工具套件、JBoss Developer Studio IDEA IntelliJ:由Michael Plushnikov开发的插件增加了对大多数功能的支持。 Javadoc:首先删除代码,然后对结果运行Javadoc。更多… Android:将lombok与Android结合使用的正确方法有点复杂,但也是可能的。更多… GWT:Lombok与GWT合作。更多… 玩框架使用Aaron Freeman的lombok play插件。 ecj:Lombok使用ecj和基于ecj的工具。更多…
用于使用lombok注释创建java模型的IDE需要包含某种插件来处理lombok生成的方法

要在不同的IDE和打包管理器中包含插件,请参阅此链接以获取更多信息:

马文或常春藤:龙目山位于马文中心。更多… Javac:只需将lombok.jar放在类路径上。 NetBeans:只需将lombok.jar放在类路径上并启用注释处理。更多… Eclipse和变体:将lombok.jar作为java应用程序运行,即双击它,通常用于安装。还要将lombok.jar添加到项目中。支持的变体:Springsource工具套件、JBoss Developer Studio IDEA IntelliJ:由Michael Plushnikov开发的插件增加了对大多数功能的支持。 Javadoc:首先删除代码,然后对结果运行Javadoc。更多… Android:将lombok与Android结合使用的正确方法有点复杂,但也是可能的。更多… GWT:Lombok与GWT合作。更多… 玩框架使用Aaron Freeman的lombok play插件。 ecj:Lombok使用ecj和基于ecj的工具。更多…
现在还不太清楚你在问什么,但如果你说的是自动完成,只要合成的方法存在于.class文件中,Eclipse就可以将它们用于自动完成。@chrylis我想这是有用的信息,但仍然不能解决我的问题,所以我对这个问题进行了更新。仍然不清楚你在问什么;您是说当使用Eclipse编译器时,您的Lombok添加不起作用吗?您是否安装了Lombok Eclipse插件?不太清楚您在问什么,但如果您谈论的是自动完成,只要合成的方法存在于.class文件中,Eclipse就可以使用它们进行自动完成。@chrylis我想这是有用的信息,但仍然不能解决我的问题,所以我对这个问题做了更新。现在还不清楚你们在问什么;您是说当使用Eclipse编译器时,您的Lombok添加不起作用吗?您是否安装了Lombok Eclipse插件?