作成 2003/10/9
久々ネタアップです。
実行環境
指定したフォルダ以下のJARかZIPをクラスパスに追加するプラグインです。WEB-INF以下のJARを全部クラスパスに通す、antのlibの下のJARを全部クラスパスに通すなどの場合に便利です。
以下のURLからアーカイブをダウンロードします。
http://www.insomniq.com/files/com.insomniq.eclipse.jdt.libcontainer_1.0.0.zip
普通のプラグインなので、あとはいつもの手順です。解凍して、com.insomniq.eclipse.jdt.libcontainer_1.0.0フォルダをpluginsフォルダの下にコピー。Eclipseを再起動します。
プロジェクトのプロパティー→「Javaのビルド・パス」→「ライブラリー」タブを選択します。
「ライブラリーの追加」を選択します。
「Library Folder」を選択し、「次へ」を選択します。
Library pathにJARを含むディレクトリ(WEB-INFなど)を選択します。Search files in subfoldersをチェックすると、サブディレクトリ以下のJARも追加されます。「終了」を選択します。
指定したクラスパス以下のJARがクラスパスとして認識されます(この画面で見てもわからんが。。。)。
プラグインに興味のある人向け補足。何がされているかというと、.classpathファイルにコンテナのエントリが追加されています。
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="com.insomniq.eclipse.jdt.LIB_CONTAINER/flat/app1/lib"/>
<classpathentry kind="output" path="bin"/>
</classpath>
プラグインで利用されている拡張ポイントは、以下のとおり。けっこう小物プラグインなので、学習材料にもよいかも(ソースはないけど、それはあれで)。
<extension
id="com.insomniq.eclipse.jdt.LIB_CONTAINER"
point="org.eclipse.jdt.core.classpathContainerInitializer">
<classpathContainerInitializer
class="com.insomniq.eclipse.jdt.LibContainerInitializer"
id="com.insomniq.eclipse.jdt.LIB_CONTAINER">
</classpathContainerInitializer>
</extension>
<extension
point="org.eclipse.jdt.ui.classpathContainerPage">
<classpathContainerPage
name="Library Folder"
class="com.insomniq.eclipse.jdt.LibContainerPage"
id="org.eclipse.pde.core.requiredPlugins">
</classpathContainerPage>
</extension>
なかなか痒いところに手がとどくプラグインです。.classpathファイルがすっきりします。一度設定しておけば、JARを追加したときに改めてクラスパスに追加する必要もありません。欠点(でもないけど)としては、パッケージエクスプローラ上でJARをツリーに開けないです。