2011-12-16 4 views
1

Как получить версию плагина grails из приложения?Как получить версию плагина grails из приложения?

Подробнее: мое приложение также является плагином Grails.

Когда я установил версию, используя

Grails набор-версия 0,5

Я не могу получить значение с помощью grailsApplication.metadata['app.version'] , потому что значение обновляется в моем классе FooBarGrailsPlugin.groovy

Файл application.properties остается без изменений.

Tks.


При запуске установки-версии, мое изменение класс от:

class FooBarGrailsPlugin { 
    def version = 0.1 
} 

в

class FooBarGrailsPlugin { 
    def version = 0.5 
} 

ответ

6

Следующий код выведет название и версию всех плагинов установлены в приложение

applicationContext.getBean('pluginManager').allPlugins.each {plugin -> 
    println "${plugin.name} - ${plugin.version}" 
} 
+0

Не работает. Я в контроллере, а applicationContext - null. Я перешел на «ApplicationHolder.application.mainContext» и получает плагин, но значение все равно происходит из класса FooBarGrailsPlugin, а не из файла 'application.properties'. – Topera

+0

Я видел исходный код 'SetVersion.groovy' и есть это условное:' if (isPluginProject) {..change class ...} else {... изменить файл свойств ...} '. Вот почему я меняю значение класса, а не файла. Кажется, что проект плагина не может быть версией как обычный проект. Ну, спасибо большое. – Topera

+0

Проект grails - это либо плагин, либо приложение, это не может быть так, как вы предложили в своем вопросе –

Смежные вопросы