2012-08-03 50 views

回答

10

来自插件的工件使用GrailsPlugin注释进行注释,以添加关于其来源的元数据。所以你可以使用它来查找控制器/服务/等。是从应用程序或像这样的插件:

import org.codehaus.groovy.grails.plugins.metadata.GrailsPlugin 

for (type in ['controller', 'service']) { 

    for (artifactClass in ctx.grailsApplication."${type}Classes") { 

     def clazz = artifactClass.clazz 

     def annotation = clazz.getAnnotation(GrailsPlugin) 
     if (annotation) { 
     println "$type $clazz.name from plugin '${annotation.name()}'" 
     } 
     else { 
     println "$type $clazz.name from application" 
     } 
    } 
} 
+0

非常感谢。这正是需要的。 – dcdrns 2012-08-04 06:25:56

+0

随时接受答案;) – 2012-08-04 07:03:17

0

在新创建的Grails应用程序,在grails-app /视图/ index.gsp中有以下几点:

<g:each var="c" in="${grailsApplication.controllerClasses.sort { it.fullName } }"> 
    <li class="controller"><g:link controller="${c.logicalPropertyName}">${c.fullName}</g:link></li> 
</g:each> 

你可以得到服务以类似的方式。

+0

基本上我的应用程序分为几个插件。我想添加另一个插件,它将列出每个插件中的插件和控制器/服务。 – dcdrns 2012-08-03 14:57:10

相关问题