0

Eclipse Mars で Bndtools プラグインを使用しています。プロジェクトでは、Apache FileInstall バンドルが必要であり、実行記述子の下の「実行要件」で選択しました。バンドルはアクティブです。

ポーリング、構成ファイルを監視するディレクトリなどの FileInstall の現在のパラメーターを取得する方法を理解できないため、ManagedService を実装するクラスの構成ファイルをどこに置くべきかわかりません。

VM引数の下に次の行を追加しようとすると...

-Dfelix.fileinstall.dir=/home/ppatierno/Downloads

Config Admin サービスは、数秒後に停止状態になります。

「実行要件」の下に FileInstall バンドルを追加せずに、Apache felix コンソールからインストールして起動すると、起動してアクティブになりますが、プロパティの上にメイン構成が出力されません。

何か案が ?

4

1 に答える 1

0

これが役立つかどうかはわかりません。FileInstaller を使用するために私がしたことは次のとおりです。

次のような機能をデプロイします。

<feature name="myFeature" version="${myproject.version}">        
    <configfile finalname="/my/path/myConfig.cfg" override="false">mvn:my.group/artifact.with.the.conf.file.in.nexus/${myproject.version}/cfg/configuration</configfile>
    <bundle>mvn:my.group/artifact.with.the.feature.impl/${project.version}</bundle>
</feature>

これにより、構成ファイルがコピーされmy/path/、ファイルは name のサービスとしてデプロイされますmyConfig。次に、更新を取得するために、次のように、コンフィギュレーター (ManagedService) の開始時に更新を登録します。

    Hashtable <String, Object> properties = new Hashtable<String, Object>();
    properties.put(Constants.SERVICE_PID, "myConfig");
    myService = context.registerService (ManagedService.class.getName(),this , properties);
于 2015-12-22T10:00:53.197 に答える