在Leopard下使用Eclipse,在ANT部署时发现环境变量TOMCAT_HOME找不到.而在~/.bashrc中已经配置了TOMCAT_HOME.
这是由于MacOSX的GUI的环境变量是在./MacOSX/environment.plist中配置的.
environment.plist的格式如下.
在macosxhints.com找到了一个python的脚本,用来将命令行下的环境变量生成一个environment.plist.
重启后生效.
http://www.macosxhints.com/article.php?story=20040715133738459&query=environment%2Bvariables
这是由于MacOSX的GUI的环境变量是在./MacOSX/environment.plist中配置的.
environment.plist的格式如下.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DISPLAY</key>
<string>:0.0</string>
<key>PYTHONPATH</key>
<string>/full/path/ofyour/favorite/script/dir:/full/path/of/another/script/dir:</string>
</dict>
</plist>
在macosxhints.com找到了一个python的脚本,用来将命令行下的环境变量生成一个environment.plist.
重启后生效.
http://www.macosxhints.com/article.php?story=20040715133738459&query=environment%2Bvariables
#!/usr/bin/python
### environmentPlist.py
### Generate ~/.MacOSX/environment.plist from symbols in
### current environment. Copyright 2004 by Steve Beisner
### Any use is allowed as long as this notice is retained.
import os
### The complete path for the current user's "environment.plist" file
dirName = os.path.join( os.environ['HOME'], '.MacOSX')
fileName = os.path.join( dirName, 'environment.plist')
### make sure directory exists.
if not os.path.exists( dirName):
os.mkdir( dirName )
### XML template for the overall structure of the file "environment.plist".
fileTemplate = """
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
%s
</dict>
</plist>
"""
#### XML Template for a single name/value pair
itemTemplate = """
<key>%s</key>
<string>%s</string>
"""
### Build the body: text containing the xml for all
### symbols in the environment.
body = ""
for key in os.environ.keys():
body += itemTemplate % ( key, os.environ[key] )
### Create new environment.plist file for all
### the environment symbols.
file = open( fileName, 'w')
file.write( fileTemplate % body )
file.close()