Finder를 통해 시작된 앱은에 설정된 PATH를 준수하지 않는 것 같습니다 .bash_profile
. 따라서 IDE (Intellij)에서 코드를 실행하려고하면 더 이상의 프로그램에 액세스 할 수 없으며 /usr/local/bin
일반적으로 터미널의 경로에 추가됩니다.
분명히 .MacOSX/environment.plist
방법으로 사용하지 않는 이 작업을 수행 할 수 있지만, 더 이상 사자에서 작동합니다.
PATH
Finder 실행 응용 프로그램을 설정하려면 어떻게 해야합니까?
답변
10.8이 아닌 10.7 인 경우 아래 솔루션이 제대로 작동합니다.
나는 일식과 같은 문제가 있었지만 이제는 예를 들어 다음을 추가 .bash_profile
하고 효과가있었습니다.
export PATH=some_path:another_path
launchctl setenv PATH $PATH
원래 경로를 그대로 사용하려는 경우
p=$(launchctl getenv PATH)
launchctl setenv PATH /my/new/path:$p
대신 (또는 그냥 launchctl setenv PATH /my/new/path:$(launchctl getenv PATH)
).
참고 : launchctl PATH 변경은 Dock이 “다시 시작”될 때까지 적용되지 않습니다. 다음 명령으로 현재 프로세스가 종료 된 후 새로운 Dock 프로세스가 자동으로 시작됩니다.
killall Dock
답변
‘새로운’문제에 대한 질문에 답하기 위해 샘플로 설명하기가 더 쉽기 때문에 다른 답변을 작성하기로 결정했습니다.
선택한 도구 (IDE)를 시작할 때 환경 변수를로드하는 한 가지 방법은 식으로 수행 할 수있는 것과 같습니다. 도구 (IDE)에도 비슷한 구조가 있어야한다고 생각합니다.
일식에서 어떻게 할 수 있습니까-https : //.com/questions/829749/launch-mac-eclipse-with-environment-variables-set
(환경 변수에 대해 약간 다시 작성)
Eclipse 애플리케이션 번들 디렉토리에 “eclipse.sh”라는 빈 텍스트 파일을 작성하십시오. /Applications/eclipse/Eclipse.app/Contents/MacOS
텍스트 편집기에서 eclipse.sh를 열고 다음 내용을 입력하십시오.
#!/bin/sh
. ~/.bash_profile
logger "`dirname \"$0\"`/eclipse"
exec "`dirname \"$0\"`/eclipse" $@
터미널에서 쉘 스크립트 eclipse.sh의 실행 가능 플래그를 설정하십시오.
chmod +x /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse.sh
Eclipse.app Info.plist를 열고 CFBundleExecutable 키의 값을 eclipse에서 eclipse.sh로 변경하십시오.
MacOS X은 Eclipse.app의 Info.plist가 변경되었음을 자동으로 감지하지 않습니다. 따라서 lsregister 명령을 사용하여 터미널에서 LaunchService 데이터베이스를 강제로 업데이트해야합니다.
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -v -f /Applications/eclipse/Eclipse.app
다음에 Dock 또는 Finder에서 Eclipse.app를 시작할 때 환경 변수를 설정해야합니다.
답변
OS X 10.10 Yosemite에서는 다음 명령을 사용했습니다.
sudo launchctl config user path <my path setting>
그의 사용자 는 모든 사용자에 대해 launchtl PATH를 설정합니다 . 이것은 내 유스 케이스에서 잘 작동했습니다. 효과를 유지하려면 컴퓨터를 다시 부팅하라는 메시지가 표시됩니다.
답변
산 사자에 모든 /etc/paths
및 /etc/launchd.conf
편집은 적용되지 않습니다!
애플 개발자 포럼의 말 :
“.app 자체의 Info.plist를 변경하여 원하는 환경 변수가 포함 된”LSEnvironment “사전을 포함하십시오.
~ / .MacOSX / environment.plist는 더 이상 지원되지 않습니다. “
그래서 앱을 직접 편집 Info.plist
했습니다 ( “AppName.app”(이 경우 SourceTree)를 마우스 오른쪽 버튼으로 클릭 한 다음 ” Show package contents
“)
새로운 키 / dict 쌍을 추가했습니다 :
<key>LSEnvironment</key>
<dict>
<key>PATH</key>
<string>/Users/flori/.rvm/gems/ruby-1.9.3-p362/bin:/Users/flori/.rvm/gems/ruby-1.9.3-p362@global/bin:/Users/flori/.rvm/rubies/ruby-1.9.3-p326/bin:/Users/flori/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:</string>
</dict>
( Apple의 LaunchServicesKeys 설명서 참조 )
이제 앱 (내 경우에는 SourceTree)이 주어진 경로를 사용하고 git 1.9.3과 함께 작동합니다 🙂
추신 : 물론 특정 경로 요구에 맞게 경로 항목을 조정해야합니다.
답변
Mountain Lion (10.8.4)에서는 $PATH
어떻게 든 특별하게 취급됩니다. 이후 Dock 또는 Finder에서 시작된 Terminal.app 또는 Emacs.app 인스턴스 launchctl setenv PATH /your/path:/here
에는 아무런 영향을 미치지 않습니다 $PATH
( launchctl setenv SPONG foo
잘 작동하는 경우). 또한 $HOME/.launchd.conf
작동하지 않습니다. /etc/launchd.conf
PATH를 모든 곳에서 올바르게 설정하는 유일한 방법입니다. 불행히도, $HOME
거기 와 같은 envar을 사용할 수 없으므로 내 랩톱의 모든 사용자가 /Users/nb/bin
에 $PATH
있습니다. 그건 나 뿐이야 상관 없어요
답변
~ / .profile 또는 ~ / .bash_profile 또는 ~ / .zprofile (zsh의 경우)에 경로를 설정하십시오. 이것은 VimR에서 저에게 효과적이었습니다. 독에서 시작할 때 PATH를 읽지 않았지만 터미널에서 시작할 때 작동했습니다. 그건 그렇고 OSX 10.11에서 실행 중이었습니다.
나는 이것이 작동하는 이유에 대한 훌륭한 설명을 제공하기에 충분한 핸들을 가지고 있지 않습니다. 다른 구성 파일과 그 기능에 대한 온라인 설명이 많이 있습니다 : https :
//.com/questions/415403/ bashrc-bash-profile-and-environment 사이의 차이점
또한 비슷한 토론을 참조하십시오 : https :
//.com/questions/3344704/path-variable-not-properly-set-in-gvim-macvim-when-it-is-opened-from-the-finder/ # 24542893
답변
Mac OS X 10.8.4, Mountain Lion에서 경로 환경은이 파일에 나열된 경로를 통합합니다.
/etc/paths
vim
다음 명령 과 같은 명령 행 도구를 사용하여이 파일을 편집 할 수 있습니다 .
sudo vim /etc/paths