命令行选项-Dgrails.env=customEnv何时生效
我想知道环境何时设置为我传递为的选项: 更新:我正在跑步命令行选项-Dgrails.env=customEnv何时生效,grails,Grails,我想知道环境何时设置为我传递为的选项: 更新:我正在跑步 grails clean -Dgrails.env = customEnv 简而言之,Environment.current.name何时设置为customEnv 要查看哪个文件?在清理的情况下,它什么都不做。grails.env最常用的两个命令是runapp和war 对于runapp,grails将使用特定于您指定的环境的配置运行您的应用程序(使用嵌入式Tomcat) 对于war,grails将使用特定于您指定的环境的数据源和Co
grails clean -Dgrails.env = customEnv
简而言之,Environment.current.name
何时设置为customEnv
要查看哪个文件?在
清理的情况下,它什么都不做。grails.env
最常用的两个命令是runapp
和war
对于runapp
,grails将使用特定于您指定的环境的配置运行您的应用程序(使用嵌入式Tomcat)
对于war
,grails将使用特定于您指定的环境的数据源和Config.groovy
配置编译war
如果您有要部署到的单独环境(例如,Dev和Prod),这尤其有用 我认为您编写了错误的启动命令语法。在执行命令之前,需要首先传递系统环境名称,并且不应在任意一侧包含空格:
grails -Dgrails.env=customEnv run-app
在您的buildCconfig
上添加:
import grails.util.Environment;
你在运行什么命令?您是否正在使用Maven构建项目?检查StartRails脚本您在寻找什么?当我记录Environment.current.name
的值时,你没有得到值Environment.current.name
设置为customEnv
?@ShashashankAgrawal是的,当我记录Environment.current.name
的值时,我得到一个空映射([:]),这是因为我在运行clean
时看到一条消息,上面写着“Environment设置为customEnv
”。但我的问题是,Environment.current.name
何时设置为customeEnv
?我不完全确定你在问什么。清理应用程序时设置grails.env实际上没有任何效果。但是,如果您要运行grails run app-Dgrails.env=customEnv
,那么引用Environment.current.name
的任何代码都会返回“customEnv”,如果我不清楚,那么很抱歉。您正在告知Environment.current.name
何时生效,但我想知道Environment.current.name
何时设置为customeEnv
。如果您知道它,请指向操纵Environment.current.name
的grails文件,为什么不自己在GitHub上搜索它呢?不,我可以看到控制台输出,上面写着“Environment set to customEnv”。好的,您使用的是哪个版本的grails?grails版本:2.3.0
import grails.util.Environment;