KDE의 응용프로그램 실행기에 독립형 응용프로그램 등록하기

KDE의 응용프로그램 실행기에 독립형 응용프로그램 등록하기

우선 저는 쿠분투 12.04를 사용하고 있습니다.

방금 일부 소프트웨어(Intellij의 Phpstorm IDE이지만 중요하지 않다고 생각함)의 독립 실행형 설치를 다운로드하고 압축을 풀었습니다. sudo를 사용하여 압축을 푼 디렉터리를 내 디렉터리에 복사했습니다 /opt.

sudo문제 없이 사용하지 않고도 명령줄에서 기본 셸 스크립트를 시작할 수 있습니다 .


내에서 앱을 실행하고 싶어서 런처 아이콘에서 앱을 Application Launcher실행 Edit Applications...하고 새 항목( )에 메인 셸 스크립트 경로를 추가하고 /opt/PhpStorm-111.344/bin/phpstorm.sh저장했습니다. 새로 추가된 항목을 클릭할 때마다 아무 일도 일어나지 않고 응용 프로그램이 실행되지 않습니다. 나는 보았다kde에 응용프로그램을 등록하는 것에 대한 질문입니다.Edit Applications..., 그리고 그것이 대화가 해야 할 일이기 때문에 이 상황에는 적용되지 않는다고 생각합니다 .

그렇다면 내가 무엇을 놓치고 있는 걸까요? 대화 상자 항목에서 명령을 실행하는 다른 방법을 지정해야 합니까? 파일 문제 인가요 .desktop? 다른 것?

나는/opt/PhpStorm-111.344/bin/phpstorm.shALT+F2 달리다box , 터미널을 호출합니다. $JAVA_HOME변수를 찾을 수 없다는 메시지가 반환되었습니다 .

이제 실제로 파일 $JAVA_HOME에 환경 변수가 설정되어 .bashrc있으며 명령에서 이를 볼 수 있습니다 echo $JAVA_HOME. 다시 말하지만, 간단히 터미널을 열고 거기에서 셸 스크립트를 실행하면 문제 없이 애플리케이션을 실행할 수 있으므로 $JAVA_HOME해당 컨텍스트에 변수가 표시됩니다. 로그아웃했다가 다시 로그인하여 실행했는데 source ~/.bashrc둘 다 도움이 되지 않는 것 같습니다.

$JAVA_HOME나는 지금 그것이 실행을 방해하는 변수 에 대한 일종의 사용자 권한 문제라고 생각하고 있습니다 .

어떤 제안이 있으십니까?

답변1

디스플레이/xsession 관리자가 어떻게 설정되어 있는지에 따라 호출 ~/.bashrc되기 전에 소스가 제공되지 않을 수 있으므로 startkde설정 중인 위치라면 $JAVA_HOMEKDE 데스크탑에서 아무것도 볼 수 없습니다.

유용하게도 은(는) 모든 디렉터리의 startkde소스로 설정되어 있습니다 . 여기에는 또는 이와 유사한 내용이 포함되어 있을 가능성이 높으므로 KDE 세션 전반에 걸쳐 변수가 존재하도록 하려면 거기에 있는 쉘 스크립트를 삭제하기만 하면 됩니다.*.shkde4-config --path lib | tr : '\n' | sed -n -e 's,/lib[^/]*/,/env/,p'~/.kde4/envexport

답변2

2줄 스크립트를 포함하는 간단한 해결 방법이 있습니다. 단순히 $JAVA_HOME변수를 적절한 경로로 다시 내보낸 다음 응용 프로그램의 기본 셸 스크립트를 호출합니다. KDE 응용 프로그램 실행 프로그램을 이 새 스크립트로 다시 지정하면 예상대로 응용 프로그램이 시작됩니다.

그래도 내가 왜 이렇게 해야 하는지 잘 모르겠습니다. 왜냐하면 내가 $JAVA_HOME고안한 스크립트의 컨텍스트 외부에서 올바른 변수 정의를 명확하게 볼 수 있기 때문입니다. 따라서 누군가가 왜 그런 일이 발생하는지 밝힐 수 있다면 나는 그것을 이 질문에 대한 적절한 대답으로 기꺼이 표시할 것입니다.

관련 정보