背景 我有一个sbtpipe理的Scala项目,为scala项目使用通常的sbt项目布局 ,也就是说,一个包含macros的子项目是一个主要的项目,它是实际的应用程序,依赖于macros的子项目。 macros是实质上为常规类生成伴随对象的macros注释 。 生成的伴随对象声明,除其他成员之外,应用/不适用的方法。 我使用sbt-idea插件来生成相应的IntelliJ IDEA项目,并使用IDEA的sbt-plugin中的sbt控制台来编译和运行我的Scala应用程序。 除了生成的伴侣对象,更重要的是它们的成员(如apply / unapply),IDEA不能识别所有的东西,所有的东西都或多或less都是正常的。 因此,我在任何地方都会得到一条曲线,例如一个应用方法。 我的设置是IntelliJ IDEA CE 133.471,在Windows 7 x64上安装了插件SBT 1.5.1和Scala 0.28.363。 问题 如何让IntelliJ IDEA识别由Scalamacros生成的代码(类,对象,方法,…)(macros注释,准确地说)? 已知其他IDE(例如Eclipse)在这种环境中能够更好地工作吗? 有关 这个问题 (不太详细)本质上是一样的,但还没有得到答复(2014-02-26)。 根据JetBrains的开发者 ,我所要求的function是在他们的长期待办事项清单上,但不会很快实施(2014-03-05)。