Eclipse:在Scala中解决隐式转换和宏注释的问题
我正在使用macroparadise在我的项目中生成方法和案例类(宏本身在我使用它们的核心文件的单独项目中定义) 一切都按预期编译和运行,但Eclipse无法解析宏生成的变量和方法。然而,当我关闭并重新打开Eclipse时,它完美地识别了一切;我可以将鼠标悬停在类和方法上,获得正确的信息。但是,一旦我更改了任何内容,甚至只是关闭并重新打开引用generate方法的文件,Eclipse就会在所有生成的变量和方法下面加下划线,并告诉我“notfound:value{name}”(其中{name}是var名称) 更新Eclipse:在Scala中解决隐式转换和宏注释的问题,eclipse,scala,scala-macros,scala-ide,scala-macro-paradise,Eclipse,Scala,Scala Macros,Scala Ide,Scala Macro Paradise,我正在使用macroparadise在我的项目中生成方法和案例类(宏本身在我使用它们的核心文件的单独项目中定义) 一切都按预期编译和运行,但Eclipse无法解析宏生成的变量和方法。然而,当我关闭并重新打开Eclipse时,它完美地识别了一切;我可以将鼠标悬停在类和方法上,获得正确的信息。但是,一旦我更改了任何内容,甚至只是关闭并重新打开引用generate方法的文件,Eclipse就会在所有生成的变量和方法下面加下划线,并告诉我“notfound:value{name}”(其中{name}是v
我已将该行为隔离到如下情况:
结束更新 Eclipse如何解析变量?它正在查看我的目标/文件夹中的类文件吗?我的所有生成代码都有*.class文件,因此如果Eclipse正在查看这些文件,那么这些变量实际上应该存在 有没有人让Eclipse正确解析这些变量?我尝试了IntelliJ IDEA,但IDEA无法使用隐式转换和宏解决任何问题(我遵循了我在网上找到的方向,但运气不佳) 信息:
面向Java开发人员的Eclipse IDE 版本:氧气释放(4.7.0)
构建id:20170620-1800
Scala插件
scala ide.org
4.4.1.v-2_11-201605041057-92a3ed3
org.scala ide.sdt.feature
编译器插件:
大沼泽地
org.scalamacros
天堂2.11.8
2.1.0版
环顾四周后,Intellij或Eclipse似乎不支持org.scala.macroparadise插件。我通过切换到org.scalameta.paradise插件解决了我的问题,该插件由Intellij scala插件支持
使用org.scalameta,我生成的所有变量都可以解析,我的宏可以在IDE中展开。环顾四周,Intellij或Eclipse似乎不支持org.scala.macroparadise插件。我通过切换到org.scalameta.paradise插件解决了我的问题,该插件由Intellij scala插件支持
使用org.scalameta,我生成的所有变量都可以解析,我的宏可以在IDE中展开。这并不奇怪,IDE通常不太好地帮助实现高级语言功能,如宏或依赖类型这并不奇怪,IDE通常不能很好地帮助实现高级语言功能,例如宏或依赖类型