2013-04-17 2 views
2

이 java.exe를 실행하려고하고 사랑스러운 오류를 일반 명령 쉘에서힘내 배쉬 쉘은 java.exe를

>> sh.exe": java.exe: command not found 

명령 작품을 점점 찾을 수 없습니다.

나는 둘의 경로를 확인했는데 거의 같다. bash는 예상대로 몇 개의 추가 디렉토리를 가지고있다. 나는 내가 사람이 무엇을 어떤 아이디어가 미묘한 뭔가를 누락 파악 env |grep PATHset PATH 각각 확인 ...

where java.exe 

C:\Windows\System32\java.exe 

set PATH 
Path=C:\Ruby193\bin;C:\Windows\system32;C:\Windows; 

env |grep PATH 
HOMEPATH=\ 
PATH=/c/Users/hooksc/bin:.:/usr/local/bin:/mingw/bin:/bin:/c/Ruby193/bin:/c/Windows/system32:/c/Windows: 

를 사용?

나는 약간 짧은 경로로 읽기 쉽도록했다. 그러나 java.exe의 소스 폴더 중 적어도 하나는 경로에있다.

+0

또한이 문제가 발생합니다. 누구든지 아이디어가있어? –

답변

6

Gitbash는 % PATH % 변수를 찾습니다.

env | grep PATH 

하고 당신의 JDK의 bin 디렉토리에 대한 경로가 포함되어 있는지 확인 : 당신의 gitbash 유형에. 그렇지 않으면 경로를 직접 추가해야합니다. 추가하는 방법에 대한 자세한 내용은 다음 링크를 참조하십시오. http://www.java.com/en/download/help/path.xml

+2

시스템 사용자 PATH와 로그인 한 사용자 PATH 변수간에 차이점이 있습니다. Java는 사용자가 아닌 시스템의 경로에 있으며 시스템 PATH 변수는 표시됩니다. 이유는 모르겠지만 시스템 PATH에 Java를 추가하면됩니다. – Shire

+0

@Shire 어쩌면 별도의 답변으로 추가해야합니다 :) – kaiser

+0

이 자체 답변으로이 끌어 내기 위해, 왜 gitbash 사용자가 PATH 로그인 한 변수 대신 시스템 PATH 사용하여 대답하고 싶습니다. 나는 아직도 그 비트에 혼란 스럽다. 단지 아직 그것을 이해할 시간이 없다. – Shire

2

시스템 수정시 PATH가 문제를 해결할 수 있지만 자식 프로세스가 연결된 사용자 PATH를 보지 못하는 이유는 설명하지 않습니다.

나는 Git Bash와 동일한 문제가있어서 결국 내 사용자 PATH에 다음과 같은 내용이 포함되어 있다는 것을 알게되었습니다. % VPROJECT % .. \ bin; ...하지만 VPROJECT 환경 변수가 없었습니다. 어떻게 든이 문제는 시스템 PATH에 대한 사용자 PATH의 연결이 자식 프로세스에 대해 자동으로 실패하게됩니다. (이상하게도 초기 bash 쉘에는 영향을 미치지 않지만 문제를 찾는 것).

누구에게 책임이 있는지 알지 못합니다. git-bash.exe, bash.exe, sh.exe 중 하나 이상이 맞지 않습니다. 물론 해당 환경 변수를 추가하지 않고 해당 경로를 추가 한 경로 (또는 경로를 제거하지 않고 환경 변수를 제거한 경로)도 마찬가지입니다.