Library Folder ClasspathContainer

作成 2003/10/9

久々ネタアップです。

実行環境

Library Folder ClasspathContainerとは?

指定したフォルダ以下の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をツリーに開けないです。


UP TOP