問題描述:
mac筆記本本身會自帶幾個python版本,比如python2.7版本,我沒有改動mac默認的python版本,只是安裝了python3.7版本。
使用Pycharm開發Python項目沒有遇到什么問題。但是在java項目中調用py腳本的話,就有問題了。我的項目需要將Pycharm開發好的py腳本(多個.py文件),拷貝到java項目中,在java項目(是用IDEA開發工具)中,如果直接是用鼠標右鍵運行py腳本的話是沒有問題的,將py腳本依賴的第三方庫直接拷貝到py腳本所在地目錄下然后再用java去調用也沒有問題,但如果py腳本中導入了python的第三方庫,就會有問題,具體表現為java調用后控制台沒有任何輸出,也不報錯。
解決方式主要參考了這篇博客:
https://www.cnblogs.com/BlueSkyyj/p/9455955.html
下面是我的mac筆記本中的python環境,重點在於配置正確的python環境PATH變量:
B000000067100V:~ v_shiyanjun$ which python /Users/v_shiyanjun/anaconda3/bin/python B000000067100V:~ v_shiyanjun$ /Users/v_shiyanjun/anaconda3/bin/python -V Python 3.7.0 B000000067100V:~ v_shiyanjun$ python --version Python 3.7.0 B000000067100V:~ v_shiyanjun$ python3 --version Python 3.7.0 B000000067100V:~ v_shiyanjun$ python -V Python 3.7.0 B000000067100V:~ v_shiyanjun$ python3 -V Python 3.7.0 B000000067100V:~ v_shiyanjun$ cat ~/.bash_profile export M2_HOME=/Users/v_shiyanjun/soft/apache-maven-3.5.4 export PATH=$PATH:$M2_HOME/bin export PATH=$PATH:/usr/local/mysql/bin # Setting PATH for Python 3.7 # The original version is saved in .bash_profile.pysave #PATH="/Library/Frameworks/Python.framework/Versions/3.7/bin:${PATH}" PATH="/usr/local/lib/python3.7/site-packages:${PATH}" export PATH # added by Anaconda3 5.3.1 installer # >>> conda init >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="$(CONDA_REPORT_ERRORS=false '/Users/v_shiyanjun/anaconda3/bin/conda' shell.bash hook 2> /dev/null)" if [ $? -eq 0 ]; then \eval "$__conda_setup" else if [ -f "/Users/v_shiyanjun/anaconda3/etc/profile.d/conda.sh" ]; then . "/Users/v_shiyanjun/anaconda3/etc/profile.d/conda.sh" CONDA_CHANGEPS1=false conda activate base else \export PATH="/Users/v_shiyanjun/anaconda3/bin:$PATH" fi fi unset __conda_setup # <<< conda init <<< B000000067100V:~ v_shiyanjun$
執行 source ~/.bash_profile 立即生效
設置完環境變量后,我們 想要執行python3,仍然需要 輸入python3 or python3.7方可,也挺麻煩,可以通過設置軟連接來實現
設置軟連接
命令:
sudo ln -f /usr/local/bin/python3.7 /usr/local/bin/python
即通過這個設置,可以實現輸入python 就是執行的python3.7