1

这是我第一次使用 mac os(OS X 10.5.8)进行真正的开发。我从工作中得到了一个 macbookpro,我仍在设置正确的开发环境。我选择创建 /etc/launchd.conf它对我的大多数库(JAVA_HOME,JRE_HOME)都工作正常,我现在需要添加 CATALINA_OPTS=-Duser.timezone=Asia/china,但 mac 中 launchd.conf 的语法似乎没有等号“=”。我所看到的都是空格,所以当我需要添加属性文件或 tomcat 文件时,我有点迷茫。我不想破坏任何东西,我想确定我有正确的方法。可以吗?

CATALINA_OPTS -Duser.timezone=亚洲/中国

谢谢阅读

4

1 回答 1

2

“=”符号特定于特定应用程序的语法。例如 bash 使用“key=value”,而launchctl使用类似于 csh 的语法,“setenv key value”。

launchd.conf ( $HOME/.launchd.confand /etc/launchd.conf) 是launchctl命令的脚本。

因此,在这种情况下CATALINA_OPTS=-Duser.timezone=Asia/china,键(通常称为环境变量、env var 或只是变量)是CATALINA_OPTS,值是-Duser.timezone=Asia/china

我知道这有几个原因。

  • 通常,环境变量名称都是大写的。
  • 环境变量名称出现在第一个等于“=”(或空格“”)之前。
  • -D表示Java 的 VM的系统属性的定义。
    • 请注意,Java 系统属性的键/值语法使用“key=value”语法。
    • Java 系统属性通常包含一个点“.”。环境变量名称没有。
    • 所以关键是user.timezone,价值是Asia/china

顺便说一句,我不确定Asia/china是一个有效的时区。至少不是根据我找到的清单。但也许它会起作用,因为中国只有一个时区。

于 2009-12-22T21:12:33.127 回答