「フォルダー」外部変数を機能させることができません。常に [:] を取得しています。
WindowsのGrailsで開発しています(これが、外部構成ファイルが file:C:\path\to/file のように見える理由です)。
以下に示すのと同じ方法で、別のプロジェクトで問題なく外部構成を使用しています。
私はこれを持っています:
構成グルービー:
environments {
development {
grails.config.locations = [ "file:${userHome}/.grails/${appName}-config.groovy" ]
}
}
myApp-config.groovy:
stats.feed.wsdl.folder = '/static'
コントローラーとサービス:
class WsdlController {
def wsdlService
def index = {
wsdlService.getEventsSchedule()
}
}
class WsdlService {
def grailsApplication
def getEventsSchedule = {
println "Locations: ${grailsApplication.config.grails.config.locations}"
println "Folder: ${grailsApplication.config.stats.feed.wsdl.folder}"
}
}
コンソール:
Locations: [file:C:\Users\myUser/.grails/myApp-config.groovy]
Folder: [:]
どんな手掛かり?
ありがとう!
更新しました!
これは myApp-config.groovy 全体です。
println 'Start'
stats.feed.wsdl.folder = "/stats"
println 1
stats.feed.wsdl.folder.events = "${stats.feed.wsdl.folder}/events"
println 2
stats.feed.wsdl.folder.teams = "${stats.feed.wsdl.folder}/teams"
println 'End'
これは機能していません。コンソールに次のように表示されます。
Start
1
しかし、変数名を変更すると機能します。
println 'Start'
stats.feed.wsdl.folder = "${playcall.static.resources.folder}/stats"
println 1
stats.feed.wsdl.events.folder = "${stats.feed.wsdl.folder}/events"
println 2
stats.feed.wsdl.teams.folder = "${stats.feed.wsdl.folder}/teams"
println 'End'
コンソール:
Start
1
2
End