0

我正在尝试在我的项目中实现“Apple Push Notification Service Integration”插件grails(http://grails.org/plugin/apns),但我收到一个错误,似乎在grails中使用了不推荐使用的方法。

我的问题是;有什么不同的方式可以使用这个插件吗?或者我该如何解决这个问题?

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
.Error 
|
Fatal error during compilation org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
C:\Users\Documents\worspace\example\target\work\plugins\apns-1.0\.\ApnsGrailsPlugin.groovy: 1: unable to resolve class org.codehaus.groovy.grails.commons.ConfigurationHolder
 @ line 1, column 1.
   import org.codehaus.groovy.grails.commons.ConfigurationHolder
   ^
1 error
 (Use --stacktrace to see the full trace)
4

1 回答 1

1

ConfigurationHolder并且一些其他静态持有者类已被弃用并最终被删除,因此在尝试使用使用持有者类且尚未更新的旧插件时,您会看到这样的错误。源代码库有一个更新版本的代码,它没有使用持有者类,但它仍然有些过时,所以我清理它并发送了一个拉取请求

我不知道作者是否或何时会发布插件的新版本,但您可以从我的 repo 构建插件进行测试,或者由于插件非常简单,您可以将其内联到您的应用程序中。

该插件仅提供apnsServiceSpring bean 和它需要的 jar 依赖项,因此另一个选项是包含ApnsFactoryBean.groovy到您的应用程序中,将doWithSpring块中的代码复制ApnsGrailsPlugin到您的应用程序中grails-app/conf/spring/resources.groovy,然后从BuildConfig.groovy(apns, mina-core,和 jackson-mapper-asl,但不是 release 或 rest-client-builder 插件)到您应用的BuildConfig.groovy. 配置将与插件文档中描述的相同。

如果您将代码复制到您的应用程序,请务必遵循插件使用 GPL3 许可证定义的要求。

于 2016-09-08T13:33:57.117 回答