作成 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をツリーに開けないです。