2011-05-26 40 views
0

使用AspectJ和CDI時出現此錯誤。CDI Weld和AspectJ - org.jboss.weld.exceptions.UnproxyableResolutionException

org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001437正常範圍的bean類 myPackageName.myClassName不 proxyable因爲類型爲最終或 它包含了最終的方法靜態 最後的java.lang .String myPackageName.myClassName.myMethodName_aroundBody0(myPackageName.myClassName。,org.aspectj.lang.JoinPoint)。

如果我刪除AspectJ它的作品,但我不想這樣。請幫忙。

+0

我可以告訴你爲什麼會發生這種情況,但我不能給你一個解決方案。有一些周圍的建議被應用於myClassName。周圍的建議會將靜態最終方法放在字節碼中。此方法使您的類無法進行代理。最好的建議是發送一條消息到AspectJ用戶郵件列表。 – 2011-05-27 03:49:15

+1

鏈接到郵件列表:http://eclipse.org/aspectj/userlists.php – 2011-05-27 03:49:26

+0

我也想到了。感謝您的鏈接。 – 2011-05-27 09:49:56

回答

1

我從AspectJ的郵件列表中得到了一個答案,他們建議在方法應該是最終的時候添加一個編譯時標誌作爲解決方法。謝謝。

+0

你有沒有找到任何幫助過的國旗? – 2016-02-25 07:36:57

相關問題