- Java:Oracle JDK 1.8
- Grails:3.3.1
我创建一个空的Grails应用程序并在下面执行:
grails -Dgrails.env=test war
在输出线的末尾,出现:
| Built application to buildlibs using environment: production
好吧,我认为它应该显示如下:
| Built application to buildlibs using environment: test
我也尝试了
grails -Dgrails.env=TEST war
相同的结果。
,但是如果我尝试了
grails test war
它出现
| Built application to buildlibs using environment: test
孔子在哪里?
最后,我发现根本原因是powershell。如果我在CMD窗口中执行命令行" Grails -dgrails.env = test War",则结果显示
| Built application to buildlibs using environment: test
但是,如果我在PowerShell窗口中执行相同的命令,则结果是错误的,因为PowerShell会将" -dgrails.env"视为" dgrails"。因此,在Windows 8/10中的PowerShell中,我必须更改以下命令:
grails -D"grails.env"=test war
然后结果将是正确的