在grails progect中,我想构建一个二进制插件,在每个特定的项目上都可以实现“钩子”
二进制插件结构
MyService (service) MyHookClassInterface myHookClass MyHookServiceInterface myHookService MyHookClassInterface (interface) MyHookServiceInterface (interface)
ProjectHookClass impements MyHookClassInterface (groovy class) ProjectHookService impements MyHookServiceInterface (service) resources.groovy beans = { myHookClassInterface(ProjectHookClass) myHookServiceInterface(ProjectHookService) }
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'myHookClassInterface' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:529) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1095) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:277) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:269) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193) at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1093) at org.springframework.beans.factory.BeanFactory$getBean.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) at ConsoleScript0.run(ConsoleScript0:1)
THX
法比奥
已解决:这个问题与二进制插件上的resources.groovy有关。在这种情况下,grails启动过程无法合并插件和项目资源。如果可以的话,删除插件的资源就足够了。
一个插件是一个简单的实现了插件接口的类.Gradle提供的核心插件作为其分布的一部分,因此,你需要做的仅仅是应用上述的插件.然而,非核心二进制插件需要到构建类路径才能应用它们.这可以以多种方式,包括以下方式实现: 定义插件作为构建脚本中内嵌类的声明. 定义插件为在项目中buildSrc目录下的一个源文件.(参见Section 62.4, “Build sources in the buildSrc
本文向大家介绍android-gradle 远程二进制依赖项,包括了android-gradle 远程二进制依赖项的使用技巧和注意事项,需要的朋友参考一下 示例 您可以在Gradle中使用此结构添加远程依赖项: 或以下替代语法: 例如: 该compile 'com.android.support:appcompat-v7:24.1.0“行声明对Android支持库24.1.0版本的依赖。
本文向大家介绍android-gradle 本地二进制依赖,包括了android-gradle 本地二进制依赖的使用技巧和注意事项,需要的朋友参考一下 示例 您可以具有一个jar或多个jar文件的依赖项。 通过一个jar文件,您可以添加: 可以添加一个jar目录进行编译。 编译fileTree(dir: 'libs', include: ['*.jar']行告诉编译系统app/libs/在编译类路
依赖 AdminLTE 依赖两个主要的框架。下载的软件包中已经包含这两个库,因此你不必手动下载它们。 Bootstrap 4 jQuery 3.3.1+ Popper.js 1.14.7+ 下面列出了所有其他插件 插件 AdminLTE 使用以下插件。相关文档,更新或许可证信息,请访问提供的链接。 你需要手动加载插件的 js/css 文件。 AdminLTE 不会自动加载所有插件,这会造成页面加载
Example 21.2. Applying a binary plugin build.gradle apply plugin: 'java' 插件可以使用插件ID应用.插件的id作为给定的插件的唯一标识符.核心插件注册一个可以用作插件的id的短名称.在上述情况下,我们可以使用简称java的插件以应用JavaPlugin.社区插件,一方面会使用一个完全合格的形式的插件id(如com.github