Mac OS X 및 / 또는 Eclipse의 PATH env 변수


17

bash에서 경로를 인쇄하면 다음과 같이 인쇄됩니다.

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

System.out.println (System.getenv ( "PATH"))을 실행할 때; Eclipse에서 실행되는 Java에서는 인쇄합니다.

/usr/bin:/bin:/usr/sbin:/sbin

이 불일치가있는 이유를 어떻게 알 수 있습니까? PATH에 / usr / local / bin을 추가하고 Eclipse에서 Java 앱에 사용할 수 있도록해야합니다. (참고 : 시스템 경로를 수정하지 않았으므로 OS 또는 설치 한 하나 이상의 응용 프로그램에서 설정 한 기본값입니다.)

답변:



9

몇 년 후 답변을 찾는 분들 (Neon, Oxygen) :

MacOS 터미널에서 $ PATH 항목이 누락되어 Eclipse의 일부 노드 및 angular / angular2 도구가 실패했습니다. 툴링은 로그인 / 사용자 쉘 제공을 시작하지 않는 내장 된 이클립스 터미널을 적절하게 활용합니다. 따라서 사용자 PATH 설정을 구성하려면 Eclipse 환경 설정에서 Eclipse 터미널을 --login 쉘로 시작하도록 설정해야합니다.

이동 :

Preferences -> Terminal -> Local Terminal

그리고 설정

Arguments 에: --login

Eclipse 내에서 새 터미널을 열고 지금부터 사용자의 $ PATH를 사용해야합니다. 또한 ~ / .bash_profile에 설정 한 모든 것이 Eclipse에서 새 터미널을 열 때 실행됩니다.


최상의 솔루션은 GUI에서 Eclipse 구성을 변경하여 문제를 해결합니다.
pXel

이 답변을 통해 산소로 업그레이드 할 수 있었으며 이것이 작동하는 데 필요한 전부였습니다.
John

버전 문자열이 "2019-06 (4.12.0)"인 Eclipse의 "Terminal"하위 메뉴가 없습니다.
tsj

8

같은 문제가 있었다. 내 해결책은 다음과 같습니다.

  1. /etc/paths원하는 추가 경로를 포함 하도록 파일을 편집하십시오 .

  2. OSX 설치의 경우, 실행 /Applications/eclipse/eclipse 하지 /Applications/eclipse/Eclipse.app


1
여기 omg number 2는 SO MUCH FRUSTRATION의 해결책이었습니다. 감사!!
Tommy

1
이 답변을 찬성 할 수 있도록이 웹 사이트에 등록했습니다-항목 # 2 수정!
Iftah

등 / 경로는 어디에서 찾을 수 있습니까?
John

1
@John /etc/paths은 파일의 전체 경로입니다. Cmd + Shift + G를 수행 한 다음 "/ etc"를 입력하고 Enter / Return을 누릅니다. "paths"라는 파일이 있어야합니다.
Sufian

6

아하, 나는 이 웹 페이지 를 발견했다

참고 : Mac OS X의 기본 경로에는 / usr / local / bin이 포함되어 있지 않습니다. 따라서 기본 bash 쉘을 사용한다고 가정하면 이러한 도구를 사용하기 전에 export PATH = / usr / local / bin : $ PATH를 입력하거나 / etc / profile에 포함 시키십시오.

이것이 적절하고 부적절한 행동입니까? 내가하고있는 일을 정말로 모른다면 시스템 파일 편집에 대한 Leery를 얻습니다. / usr / local / bin은 루트 만 쓸 수 있으므로 보안 허점을 열지 않습니까?


홀수, 내보내기 경로를 추가했으며 Dock에서 실행되는 일식에는 영향을 미치지 않습니다. 또한 경로에 대한이 페이지를 찾았 으며 / etc / paths 파일에는

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

그러나 그 경로는 일식으로 표시되지 않습니다 ... 도크에서 실행할 수있는 $ PATH를 인쇄하는 이진 파일을 쉽게 만들고 찾을 수 있습니까? 더 쉽게 디버깅 할 수 있습니까? 이클립스가 경로와 관련이 있는지 모르겠습니다.


2
마지막 질문에 +1하십시오. bash 또는 터미널이 아닌 OS X에서 경로 문제를 진단하는 방법이 궁금합니다 .
fideli

향후 Google 직원을위한 참고 사항 : 이제 Apple /usr/local/bin은 사용자 중 첫 번째를 포함 $PATH합니다. ( 여기 참조 )
Telemachus

4

Eclipse ( "Mars"로 테스트)를 사용중인 경우 "Run Configuration"을 변경할 수 있습니다.

  1. "실행"→ "구성 실행 ..."을 클릭하십시오.
  2. 왼쪽에서 적절한 실행 구성을 선택하십시오
  3. 이제 "환경"탭을 선택하십시오
  4. "신규 ..."를 클릭하십시오
  5. "이름"필드에 "PATH"를 입력하십시오
  6. 이제 터미널로 가서 "echo $ PATH"를 입력하고 결과를 복사하십시오.
  7. 결과를 "값"필드에 붙여 넣기
  8. "OK"를 클릭하십시오
  9. "환경"탭으로 돌아가서 "기본 환경에 환경 추가"를 선택하십시오.

이제 Eclipse는 시스템과 동일한 PATH 환경 변수 값을 사용합니다. 기억하십시오 : 이것은 선택한 실행 구성에만 해당됩니다.

귀하의 질문에 이미 언급했듯이 Java로 다음을 확인하십시오.

System.getenv();

2

bash 로그인 스크립트 중 하나 ( .bashrc또는 .bash_profile)가 변경되고있는 것 같습니다 $PATH. 터미널에서 Eclipse를 시작하면 /usr/local/bin경로에 도달 합니까?


1
좋은 전화! 터미널에서 Eclipse를 실행하면 경로에 / usr / local / bin이 있습니다. 이제 어떻게해야합니까? / usr / local / bin이 모든 응용 프로그램의 경로에 있어야하는 것이 아닙니까? Finder 또는 Dock에서 Eclipse를 실행하면 경로에있을 수 있도록 어떤 스크립트를 넣을 수 있습니까?
Jason S

1
또한 사용자 디렉토리에 .bashrc 또는 .bash_profile이 없습니다.
Jason S

2

위의 팁은 저에게 효과적입니다. 1) 루트로 / etc / paths에 경로 추가 2) $ ECL_HOME / Eclipse.app 대신 $ ECL_HOME / Eclipse.app / Contents / MacOS / eclipse로 이클립스 시작


이것은 나를 위해 일합니다. 대단히 감사합니다! 필자의 경우 Eclipse를 실행하는 경로는 /Applications/Eclipse.app/Contents/MacOS/eclipse입니다.
Tsung-Ting Kuo

2

또는 /usr/local응용 프로그램을 가리키는 디렉토리에 기호 링크를 추가 할 수도 있습니다 .

예를 들면 다음과 root같습니다.

ln -s / 응용 프로그램 /PhantomJS/phantomjs-1.9.2-macosx/bin/phantomjs / usr / local / phantomjs

이것은 Eclipse 의 Maven 프로젝트 내에서 외부 PhantomJS 응용 프로그램 을 실행하는 데 도움이되었습니다 (mvn 테스트) .


이것은 같은 $PATH디렉토리 나 디렉토리 와 관련이없는 것 $PATH같습니다 /usr/local/bin. 더 자세히 설명해 주시겠습니까?
pabouk

경로 어딘가에 심볼릭 링크를 배치하면 경로에없는 실제 위치를 가리 킵니다. 전에 한 번 실행했습니다. 단일 실행 파일에서는 작동하고 파일로 가득 찬 디렉토리에서는 작동하지 않습니다.
Jason S


1

이클립스 NEON, 맥 OS X 10.11.6
이클립스 터미널은 사용할 수 없습니다 mvn명령을 사용합니다. (I 중 하나 개 소프트 링크 만들기 mvn에서를 /usr/local/bin)

임시 해결책 :

마우스 오른쪽 버튼으로 클릭 /Applications/eclipse-> 패키지 내용 표시-> 내용-> MacOS-> 두 번 클릭 eclipse하여 시작하십시오.

이 방법으로 Eclipse를 시작하면 Eclipse가 모든 경로 설정을 감지 한 다음 mvnEclipse 터미널에서 명령을 사용할 수 있습니다 .

eclipse이 폴더를 마우스 오른쪽 버튼으로 클릭 하고 별칭을 만들어 편리하게 시작할 수 있습니다.

나는 지금 왜 그런지 모르겠다. 나는 이것이 일식 버그 여야한다고 생각합니다.


0

~/.bash_profile경로를 포함하도록 편집

런치 패드에서 시작하는 대신

터미널을 열고 다음과 같이 시작하십시오.

/Applications/Eclipse.app/Contents/MacOS/eclipse

그것은 나를 위해 속임수를했다.


0

몇 가지 답변을 모아서 쉬운 것으로 업데이트하십시오.

  1. Eclipse.app를 마우스 오른쪽 단추로 클릭하고 "패키지 내용 표시"를 선택하십시오.
  2. 목차 / MacOS로 이동하여 "일식"을 찾으십시오.
  3. 마우스 오른쪽 버튼을 클릭하고 "별칭 만들기"를 선택하거나 명령과 옵션을 누른 상태에서 끌어서 놓으십시오.
  4. 응용 프로그램에서와 같이 별칭을 편리한 곳에 두십시오.
  5. 시작하려면 두 번 클릭하십시오.
  6. 6 단계는 없습니다!

이것은 원시 Eclipse 출력을 보여주는 편리한 터미널 창을 열뿐만 아니라 로그인 쉘에 설정 한 경로를 자동으로 채택합니다.

따라서 일반적인 방법 중 하나를 사용하여 경로를 설정하거나 ( 예 :와 같이 올바르게 작동하는 명령 줄 도구를 편집 /etc/paths하거나 ~/.bash_profile설치 mbed) 더 이상 걱정할 필요가 없습니다. 터미널에서 호출 할 수 있다면 Eclipse도 호출 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.