launchd.conf
が環境変数をロードしなくなったようです。他の誰かがそれに気づきましたか?
環境変数を永続的に設定する別の解決策はありますか?
launchd.conf
が環境変数をロードしなくなったようです。他の誰かがそれに気づきましたか?
環境変数を永続的に設定する別の解決策はありますか?
次の内容environment.plist
でファイルを作成します。~/Library/LaunchAgents/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>my.startup</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
<string>
launchctl setenv PRODUCTS_PATH /Users/mortimer/Projects/my_products
launchctl setenv ANDROID_NDK_HOME /Applications/android-ndk
launchctl setenv PATH $PATH:/Applications/gradle/bin
</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
ブロックlaunchctl
内に多くのコマンドを追加できます。<string></string>
は、システムのplist
再起動後にアクティブになります。launchctl load ~/Library/LaunchAgents/environment.plist
を使用してすぐに起動することもできます。
[編集]
同じソリューションが El Capitan でも機能します。
Xcode 7.0+ は、デフォルトでは環境変数を評価しません。古い動作は、次のコマンドで有効にできます。
defaults write com.apple.dt.Xcode UseSanitizedBuildSystemEnvironment -bool NO
[編集]
これがうまくいかない状況がいくつかあります。コンピューターが再起動され、[再度ログインするときにウィンドウを再度開く] が選択されている場合、再度開いたウィンドウに変数が表示されない場合があります (エージェントが実行される前にウィンドウが開かれる可能性があります)。また、ssh 経由でログインした場合、変数は設定されません (したがって、~/.bash_profile で設定する必要があります)。最後に、これは El Capitan と Sierra の PATH では機能しないようです。これは、'launchctl config user path ...' および /etc/paths で設定する必要があります。
私にとって何がうまくいったのですか(aaxのおかげで触発されました):
これを/Library/LaunchDaemons/com.apple.launchd.limit.plistに貼り付けてから再起動します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>eicar</string>
<key>ProgramArguments</key>
<array>
<string>/bin/launchctl</string>
<string>limit</string>
<string>maxfiles</string>
<string>16384</string>
<string>16384</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<false/>
</dict>
</plist>
ステップバイステップで必要な場合:
⌘+v
)。これにより、プロセスごとに 16384 ファイル、合計 16384 ファイルに制限されます。esc
ます:wq
これがお役に立てば幸いです。
解決策は、変数を に追加すること/etc/profile
です。その後、すべてが期待どおりに機能します!もちろん、sudo nano /etc/profile を使用して root ユーザーとして実行する必要があります。他の方法で編集すると、権限を root に変更したとしても、システムは /etc/profile が破損していると警告します。
次の方法で ~/.bash_profile に変数を追加しました。完了したら、再起動/ログアウトしてログインします
export M2_HOME=/Users/robin/softwares/apache-maven-3.2.3
export ANT_HOME=/Users/robin/softwares/apache-ant-1.9.4
launchctl setenv M2_HOME $M2_HOME
launchctl setenv ANT_HOME $ANT_HOME
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/robin/softwares/apache-maven-3.2.3/bin:/Users/robin/softwares/apache-ant-1.9.4/bin
launchctl setenv PATH $PATH
注:再起動/ログアウトしてログインせずに、これらの変更を適用できます;
source ~/.bash_profile