2012-12-04 3 views
5

コマンドをgogoシェルに入力すると、デフォルトのスコープ内でそのコマンドに一致するものが最初に検索されます。どのようにこのデフォルトスコープが設定されていますか?Felix gogoシェルのデフォルトコマンドスコープを変更するにはどうすればよいですか?

たとえば、gogoを使用してFelixフレームワークを起動すると、felixスコープがデフォルトとして使用されます。しかし、もしあなたがデフォルトとしてfelixシェルを使用しているequinox 3.8.1を起動すると、デフォルトとしてequinoxスコープが使用されます。

主な刺激は、私が入力したときにということである。

g! help 

私が代わりにfelix:helpの、equinox:helpから結果を得るので、私はfelixスコープデフォルトをしたいのですが。

これを設定するOSGiフレームワークプロパティはありますか?

+0

私が言うことができる限り、_first_コマンドが実行されたことを除いて、この検索がどこでも実行されます。これは残念なことにOSGi仕様の一部でもないので、このことについての詳細な文書もありません。私は誰もが自分の基準を作り始めたときに起こることだと思います。ここでfelixプロジェクトでバグを報告することができます:http://issues.apache.org/jira/browse/Felix私は彼らが比較的反応が良いと思います。 – drozzy

+0

SSHまたはTelnetを使用してgogoシェルに接続していても、透過的に接続していますか?デフォルトでは、EQUINOX_SCOPEを使用するようにデフォルト設定されています。 https://github.com/eclipse/rt.equinox.bundles/search?q=EQUINOX_SCOPE&type=Code バンドルにパッチを当てるだけでも簡単ですが、エクイノックスがfelix CommandSessionをどのように使用するかは制限があるようですどちらもデフォルトのスコープを使用する設定可能な方法を提供していません。 –

答えて

3

起動時にgogoシェルが起動スクリプトを見つけようとします。デフォルトでは、フォルダ(スタートアップディレクトリに対して)になります:それはそこにスクリプトが見つからない場合

etc/gosh_profile 

、(org.apache.felix.gogo.shell内部の)デフォルトのスクリプトが使用され、

SCOPE = gogo:* 

したがって、デフォルトのスコープを変更するには、独自のスクリプトを用意してください。