Aptana(Eclipse)无法识别.bashrc中对PATH的修改

4 投票
2 回答
4343 浏览
提问于 2025-04-16 22:01

今天我遇到了一个问题并解决了它,之后又在另一个场景中碰到了类似的问题。

当我在我的Mac终端(Mac OS Lion)中启动python(2.7)并输入

import oursql

一切都很正常。

但是当我在Aptana IDE中的python脚本里做同样的事情时,我却遇到了以下错误。

    Traceback (most recent call last):
  File "/Users/salah/Documents/Aptana Studio 3 Workspace/pubmap/src/scripts/parse_all_dblp_authors.py", line 10, in <module>
    import oursql
ImportError: dlopen(/Library/Python/2.7/site-packages/oursql.so, 2): Library not loaded: libmysqlclient.18.dylib
  Referenced from: /Library/Python/2.7/site-packages/oursql.so
  Reason: image not found

这个错误和我之前解决的问题是一样的,我是通过在

PATH=${PATH}:/usr/local/mysql/bin
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

中添加内容到.bashrc文件和

if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

中添加内容到.bash_profile文件来解决的。

为什么这些对Aptana没有影响呢?顺便说一下,Aptana是Eclipse的一个衍生版本,所以与Eclipse相关的内容应该也适用于Aptana,我是这么认为的……

编辑:

下面Peter的建议给了我一个可能的解决办法。只需在Aptana/Eclipse/Pydev的Python解释器选项中正确设置路径即可。请看下面的截图:

Aptana的解释器设置

2 个回答

1

Aptana Studio 不会读取 .bashrc 文件。不过,它会按照以下顺序包含其他文件:

if [ -f /etc/profile ] ; then . /etc/profile; fi   

if [ -f ~/.bash_profile ] ; then . ~/.bash_profile;
elif [ -f ~/.bash_login ] ; then . ~/.bash_login;
elif [ -f ~/.profile ] ; then . ~/.profile;

[[ -f ~/.aptanarc ]] && . ~/.aptanarc

谢谢,
Max

3

我很久没用过Pydev了,不过Pydev的文档里关于配置解释器的内容可能值得一看。

Python的开发环境(IDE)通常允许你在运行程序时配置Python的运行环境。

另外,修改.bashrc文件来改变你的$PATH变量,只会影响到bash会话中的环境变量。如果你不是通过bash来运行Aptana,修改.bashrc文件就不会影响到Aptana的环境变量。想了解更多,可以看看在OS X中设置环境变量的内容。

撰写回答