我已经追寻以下问题很长一段时间了,希望比我更有经验的人可以帮助我解决它。
在我的测试用例中,确切的错误如下:
java.lang.IllegalArgumentException:找不到val用户的代理:列表中的specs.BasicSpec#User(值用户,方法applyOrElse,,方法$anonfun$new$97,值 FiveLetterNames,方法$anonfun$new$90,方法$anonfun$ new$20,值,类BasicSpec,包规格,包)(currentOwner=值 FiveLetterNames)
测试可以在这里找到:
https://github.com/outr/reactify/blob/master/shared/src/test/scala/specs/BasicSpec.scala#L227 https://github.com/outr/reactify/blob/master/shared/src/test/scala/specs/BasicSpec.scala#L227
这是有问题的宏:
https://github.com/outr/reactify/blob/master/shared/src/main/scala/com/outr/reactify/Macros.scala#L72 https://github.com/outr/reactify/blob/master/shared/src/main/scala/com/outr/reactify/Macros.scala#L72
如果没有错误的更多信息,我不知道如何解决这个问题。非常感谢任何帮助。
我在我的项目中遇到了同样的问题。解决方案是不要在宏中多次使用相同的“lambda”*。
“lambda”如下:
def macroSample[A, B](c: blackbox.Context)
(lambda: c.Expr[A => B] /* <- lambda */) = { ... }
附注实际上我现在看不到你的原始代码。这是适合我的情况的解决方案
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)