JETTY_HOME의 환경 변수가 작동하지 않습니다.

JETTY_HOME의 환경 변수가 작동하지 않습니다.

다음 부두에 대한 환경 변수를 추가했습니다.이 답변하지만 여전히 JETTY_HOME not set오류가 발생합니다.

root@b:/opt# echo $JETTY_HOME
/opt/jetty
root@b:/opt# service jetty start
** ERROR: JETTY_HOME not set, you need to set it or install in a standard location
root@b:/opt# 

/etc/environment내 모습 은 이렇 습니다.

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games":
JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java":
JETTY_HOME=/opt/jetty

내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변1

이것은 거의 도움이 되지 않는 다소 실망스러운 오류입니다. 같은 문제를 해결하려는 누군가를 위해 여기에 내 솔루션을 게시해야 한다고 생각했습니다.

어쨌든 올바른 해결책은 다음과 같이 JETTY_HOME설정 하는 것입니다./etc/default/jetty

JETTY_HOME=/opt/jetty

이것이 누군가에게 도움이 되기를 바랍니다.

추신: 이것은 Java 7을 통한 Ubuntu 14.04의 jetty 9입니다.

답변2

나는 이 서비스에 대해 잘 모르지만 일반적으로 이러한 작업은 분기(fork), 즉 다른 셸을 생성하여 작동합니다. 이런 일이 발생하면 새 쉘은 로컬로 설정된 쉘 변수를 상속하지 않습니다.제외하고이를 위해 명시적으로 선정된 사람들을 위해. 이는 명령을 통해 수행되므로 export명령을 다음과 같이 수정해야 합니다.

    export JETTY_HOME=/opt/jetty

서브쉘과 딸이 상속받기를 원하는 모든 변수에 대해서도 마찬가지입니다.

답변3

내가 가진 문제는 먼저 Windows에서 "/opt/jetty" 파일을 텍스트 파일로 만든 다음 이를 서버에 FTP로 보냈다는 것입니다. 이것은 분명히 일종의 "dos 형식"이기 때문에 인식되지 않았으므로 파일을 삭제하고 다음을 사용하여 다시 만들었습니다.

nano /etc/default/jetty

그런 식으로 변수 정보를 붙여 넣으면 갑자기 모든 것이 작동했습니다!

관련 정보