[英]Mac OS X no environment variables when using sudo
我正在嘗試為mac os high sierra上的nativescript設置開發環境。
我安裝了所有必需的工具(其中包含android sdk,jdk)。 並使用.bash_profile,.bash_rc為它們兩個添加了路徑(ANDROID_HOME,JAVA_HOME)。
如果tns doctor檢查環境變量是否已設置-一切都很好。
但是當我運行sudo tns doctor時,它顯示ANDROID_HOME和JAVA_HOME且未配置。 我認為這可能更多是mac問題,而不是nativescript問題。
有任何想法嗎?
來自man sudo :
-E
-E(保留環境)選項向安全策略指示用戶希望保留其現有環境變量。 如果指定了-E選項,並且用戶沒有保留環境的權限,則安全策略可能返回錯誤。
如果要讓變量保留其值,請致電sudo -E tns doctor
。 您也可以調用sudo "ANDROID_HOME=$ANDROID_HOME" "JAVA_HOME=$JAVA_HOME" tns doctor
僅導出這兩個變量。
您需要使用-E
> export VAR=hello
> sudo su
Password:
> env | grep VAR
> exit
> sudo -E su
> env | grep VAR
VAR=hello
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.