2016-04-01 12 views
0

私のプラグインは、その内部にリソースファイルを使用しています。
実行時にこのリソースを更新したいので、私はこのファイルにいくつかのコンテンツを書き込む方法を探しています。 Eclipseプラグインのリソースファイルを更新します。

は、これまでのところ、私は私のリソースファイルに URLを得たが、それは瓶の中で、私はそれにアクセスするために Fileを使用することはできません。
は、したがって、私は

URLConnection connection = resourceURL.openConnection(); 
connection.setDoOutput(true); 
connection.connect(); 

OutputStream resourceOut = connection.getOutputStream(); 

を試してみました。しかし、これは私にこのプロトコルはOutputStreamをサポートしていないことを示すUnknownServiceExceptionをthows。

私はウェブ上でいくつかの調査をしましたが、私の問題に対する答えを見つけることができませんでした。誰かが自分のリソースファイルの内容を更新する方法について考えていることを願っています。

+0

なぜ、jarファイル内にあるファイルを更新したいのですか?あなたはそれを更新するために.jarに書き込み権限を持っていることをどのように保証するつもりですか? .jarのリソースはデフォルト値を提供し、更新された値をファイルに外部的に格納する必要があります。 eclipseを使用している場合は、環境設定システムの使用を検討してください。 – KevinO

答えて

1

プラグインjarに書き込むことはできません。一部のプラットフォームでは、これは読み取り専用の場所にインストールされます。

プラグインに関連付けられたデータを変更する場合は、プラグインの「状態の場所」に挿入することをお勧めします。これは、プラグインのために予約されたワークスペース.metadata/.pluginsディレクトリ内のディレクトリです。

は使用状態の場所を取得します。

Bundle bundle = FrameworkUtil.getBundle(getClass()); 

IPath stateLoc = Platform.getStateLocation(bundle); 

あなたはこのディレクトリにあなたが好きなものを置くことができます。コンテンツを管理するのはプラグインの責任です。

関連する問題