MacOSX Leopard 下GUI环境变量的设置

在Leopard下使用Eclipse,在ANT部署时发现环境变量TOMCAT_HOME找不到.而在~/.bashrc中已经配置了TOMCAT_HOME.
这是由于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()

你可能感兴趣的:(tomcat,apple,xml,python,OS)