-Dfoo的正确行为=";酒吧;在Tomcat7中

-Dfoo的正确行为=";酒吧;在Tomcat7中,tomcat7,amazon-elastic-beanstalk,Tomcat7,Amazon Elastic Beanstalk,我注意到在使用-D设置系统属性时,使用两个不同版本的Tomcat之间存在以下差异 如果我将-Dfoo=“bar”传递到Tomcat中,然后查找'foo'系统属性的值,根据我使用的Tomcat版本,我会得到不同的结果 Tomcat 7.0.37: System.getProperty("foo") returns "bar" (with quotes) Tomcat 7.0.27: System.getProperty("foo") returns bar (without quotes) 这

我注意到在使用-D设置系统属性时,使用两个不同版本的Tomcat之间存在以下差异

如果我将-Dfoo=“bar”传递到Tomcat中,然后查找'foo'系统属性的值,根据我使用的Tomcat版本,我会得到不同的结果

Tomcat 7.0.37:

System.getProperty("foo") returns "bar" (with quotes)
Tomcat 7.0.27:

System.getProperty("foo") returns bar (without quotes)
这种行为的“正确”行为是什么?是否应该引发错误


作为参考,我在AWS Elasticbeanstalk上做这个,所以它使用64位架构和AWS的默认映像。AWS通过一个漂亮的web UI自动设置参数,因此我不能只传入-Dfoo=bar,因为它对我是隐藏的。

问题不在于Tomcat本身,而在于AWS Elastic Beanstalk中的升级过程。您可以在中找到解释和建议的解决方案。

David-谢谢。这完全符合事实。很遗憾很难找到它(我在第一次尝试诊断问题时找不到这个问题!)