我想弄清楚如何从我的Grails 3应用程序中分离特定于配置的配置。在Grails 2中,我可以设置一个配置位置查找,它将加载我的dev特定的配置文件。而在Grails的3我发现,运行应用程序时,我可以提供额外的春天CONFIGS,即:覆盖插件的Grails配置
./grailsw -Dspring.config.location=classpath:application.yml,file:///home/nigel/src/app/dev.yml run-app
然而,这并不工作,如果我使用的插件,如下面的,它只会使用的grails-app/conf目录/ application.yml的配置:
./grailsw -Dspring.config.location=classpath:application.yml,file:///home/nigel/src/app/dev.yml url-mappings-report
所以我的问题是,我该如何提供部署的/ dev特定的配置文件的Grails,使其与Grails插件工作。
谢谢,我可以得到这种工作,如果我在application.yml文件中设置grails.config.locations参数,而不是将它作为JVM参数传递,这将是最灵活的方法。 所以,这给我留下了一个问题,我应该用什么来指向项目主目录的变量替换?我试过$ {project.home}和$ {grails.home},但都没有工作。 我可以按照建议使用类路径,但在类路径中使用“外部”配置似乎违反直觉。 – Nigel
在运行war时,没有项目主目录,您不应该使用项目主目录,而应该使用类路径中的文件,或用户主目录中的文件,或catalina基目录中的某处并支持所有这些文件,请阅读文档的插件 –