29

今日Lionをインストールしたばかりで、私のPATH env変数は〜/ .MacOSX/environment.plistによって設定されなくなりました。何か変わった?それや修正方法に関する情報が見つからないようです。何か案は?

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>PATH</key>
    <string>/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11/bin:/Users/mdi/bin</string>
</dict>
</plist>
4

10 に答える 10

15

今日、同じ問題に遭遇しました。私は Apple サポートに電話し、シニア アドバイザーにエスカレートした後、彼女のスーパーバイザーにエスカレートした後、environment.plist はサポートされなくなり、Mac OS 10.7 で環境変数を定義するための公式にサポートされた方法はないと言われました。

于 2011-07-22T16:53:49.867 に答える
14

~/.launchd.conf代わりに使用してください ( を参照) man launchctl

詳細については、この回答を参照してください。

于 2011-07-21T03:13:31.897 に答える
10

Apple がこのメカニズムを公式にサポートしているかどうかにかかわらず、現在のテクニカル ノートTechnical Q&A QA1067は依然として正確です。ただし、重要な注意事項がありません。プロパティ リストはバイナリ形式である必要があります。Xcode 4 を使用して新しいプロパティ リストを作成すると、(File Inspector で指定されたタイプに関係なく) テキスト形式のファイルが生成されます。したがって、「plutil」を使用して保存したファイルを変換する必要があります。

plutil -convert binary1 environment.plist

または、「デフォルト」を使用して、Xcode で編集できる新しいテンプレート ファイルを書き出します (保存時に元のバイナリ形式が優先されます)。

defaults write defaults write $HOME/.MacOSX/environment Root "1"
于 2011-12-07T20:19:07.460 に答える
1

私はちょうど Snow Leopard で似たようなことが起きて火傷を負い、それから何が問題なのかを突き止めました。

やっていた:

$ cd
$ defaults write .MacOSX/environment FOO bar

...しかし、これは実行とは異なることがわかりました(私の場合):

$ cd
$ defaults write /Users/ljnelson/.MacOSX/environment FOO bar

つまり、ドメインへの「パス」(実際にはパスではありません) は、ファイルへの完全なファイル パス$HOME/.MacOSX/environment.plist(.plist接尾辞を除いたもの) でなければなりません。それ以外のものは、明らかに変数を別のドメインに書き込みます (どこに置かれたのかわかりません)。

したがって、結論:常に行うdefaults write /full/path/to/your/.MacOSX/environment VARNAME value; サブコマンドの最初の引数にショートカットを使用しないでくださいwrite

于 2012-10-12T18:06:10.253 に答える
1

brew と同じようにして、/usr/local/bin/ にシンボリックリンクを作成します。私にとっては完璧に機能し、IMO はすべてがファイルである、より UNIX に似たソリューションです。

于 2012-04-09T11:24:50.913 に答える
1

奇妙なことに、ここでは問題なく動作します。Java アプリケーションから R の内部にアクセスするには、JRI 環境をセットアップする必要がありました。

environment.plist ファイルを作成するとうまくいきました。

参考までに、ファイルの内容は次のとおりです。

Malessere:~ xxxxx$ cat .MacOSX/environment.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>DYLD_LIBRARY_PATH</key>
      <string>/Users/xxxxx/lib/jri-2.13</string>
      <key>R_HOME</key>
      <string>/Library/Frameworks/R.framework/Resources</string>
   </dict>
   </plist>
于 2011-08-02T10:55:01.433 に答える
0

デフォルトでは、Mac OS X(10.7.4以降)はそれをサポートしなくなりました。http://support.apple.com/kb/TS4267を参照してください

于 2012-07-18T14:55:07.260 に答える
0

[[誰かの役に立つかもしれないので、私のこの回答をここにコピーしています:]]

私自身の調査により、8 つの異なる方法のうち 7 つの方法で環境変数を設定する方法を知ることができました。Xcodeで開発しているアプリケーションにenvarを取得しようとしていました。これらのさまざまな方法を使用して「トレーサー」環境変数を設定し、どの方法がアプリケーションのスコープに入るかを教えてくれます。以下から、「putenv」と同様に、Xcode で「scheme」を編集して引数を追加できることがわかります。そのスコープで設定しなかったもの: ~/.MACOS/environment.plist、アプリ固有の plist、.profile、カスタム スクリプトを実行するためのビルド フェーズの追加 (Xcode で [少なくとも] 設定する別の方法を見つけました) 1 つですが、私がトレーサーと呼んだものを忘れてしまい、今は見つけることができません; たぶん別のマシンにあるのでしょう....)

GPU_DUMP_DEVICE_KERNEL は 3 です

GPU_DUMP_TRK_ENVPLIST は (null)

GPU_DUMP_TRK_APPPLIST は (null)

GPU_DUMP_TRK_DOTPROFILE は (null)

GPU_DUMP_TRK_RUNSCRIPT は (null)

GPU_DUMP_TRK_SCHARGS は 1 です

GPU_DUMP_TRK_PUTENV は 1 です

...一方、ターミナルに移動して「設定」と言うと、.profile からのものだけが取得されるようです (environment.plist も取得されると思っていましたが、私は確かに、ターミナルで 2 番目のトレーサー envar を見たことがあるので、それ以来、何かがおかしくなっている可能性があります;長い一日.... )

于 2012-09-02T21:49:55.377 に答える
0

~/.MacOSX/environment.plist次の例を使用して編集できます$PATH

defaults write $HOME/.MacOSX/environment PATH "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin:/opt/local/bin"

これはあなたを書き換えます~/.MacOSX/environment.plist

またはこのファイルを編集します。

/etc/paths

システム変数の順序を変更します。

于 2012-01-20T17:47:28.683 に答える