KDEのアプリケーション実行プログラムにスタンドアロンアプリケーションを登録する

KDEのアプリケーション実行プログラムにスタンドアロンアプリケーションを登録する

まず、Kubuntu 12.04を使用しています。

私はいくつかのソフトウェア(Intellij用Phpstorm IDE、しかしそれは重要ではないと思います)のスタンドアロンインストールをダウンロードして解凍しました。解凍したディレクトリを私の/optディレクトリにコピーするためにsudoを使用しました。

sudo問題なくコマンドラインからデフォルトのシェルスクリプトを起動できます。


私のApplication Launcherアプリケーションを実行したいので、ランチャーEdit Applications...アイコンでアプリケーションを実行し、/opt/PhpStorm-111.344/bin/phpstorm.sh新しいエントリ()にデフォルトのシェルスクリプトへのパスを追加して保存します。新しく追加されたアイテムをクリックするたびに何も起こらず、アプリケーションは起動しません。私は見たkdeにアプリケーションを登録することに関する質問です。Edit Applications...そして、私はそれが会話がすべきことなので、この場合はうまくいかないと思います。

それでは、私が何を見逃しているのでしょうか?ダイアログボックスでコマンドを実行する別の方法を指定する必要がありますか?.desktopファイルの問題ですか?他にはありませんか?

/opt/PhpStorm-111.344/bin/phpstorm.sh私は次のコマンドを実行しました。ALT+F2 走る端末を呼び出すボックスです。$JAVA_HOME変数が見つからないというメッセージが表示されます。

これで、ファイルに$JAVA_HOME環境変数が設定されており、.bashrcコマンドでこれを見ることができますecho $JAVA_HOME。同様に、端末を開いてそこからシェルスクリプトを実行すると、問題なくアプリケーションを実行できるため、その$JAVA_HOMEコンテキストで変数を表示できます。ログアウトして再度ログインして実行しsource ~/.bashrcましたが、どちらも役に立たないようです。

$JAVA_HOMEそれでは、実行を妨げる変数に対する一種のユーザー権限の問題だと思います。

どんな提案がありますか?

答え1

ディスプレイ/xsession管理者の設定方法によっては、呼び出す~/.bashrc前にインポートできない可能性があるため、そのstartkde場所を設定した場合、$JAVA_HOMEKDEデスクトップには何も表示されません。

便利にFromstartkdeに設定してください。これには、または同様の内容が含まれる可能性があるため、変数がKDEセッションスコープに存在するようにするには、次のようにシェルスクリプトを削除します。*.shkde4-config --path lib | tr : '\n' | sed -n -e 's,/lib[^/]*/,/env/,p'~/.kde4/envexport

答え2

2行のスクリプトに関連する簡単な回避策があります。単に変数を$JAVA_HOME適切なパスに再エクスポートしてから、アプリケーションのデフォルトのシェルスクリプトを呼び出します。 KDEアプリケーション起動プログラムをこの新しいスクリプトに再指定すると、期待どおりにアプリケーションが起動します。

$JAVA_HOME私が設計したスクリプトのコンテキストの外で正しい変数定義をはっきりと見ることができるので、なぜこれを行うべきかわかりません。したがって、誰かがこのようなことが起こる理由を明らかにできる人がいる場合は、これをこの質問に適切な答えとして表示したいと思います。

関連情報