#topicpath
----
//ここにコンテンツを記述します。
たとえばLog4jのライブラリなど、どのプラグインでも使用したいjarがあります。そのjarを個々のプラグインディレクトリで重複して持ってたらプラグインのサイズがどんどんでかくなってしまうし、なんかムダな感じがしますね。きっと同じjarファイルを参照する方法があるんだろうと思って調べてたんですが「プラグイン化」してそのプラグインを必須プラグインにする、とやればよいようですね。

***Log4jでやってみる [#e489e2d0]
たとえばlog4jをプラグイン化するには、
#ref(log4j.png)
このようなディレクトリ構成にし、plugin.xmlは
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.0"?>
 <plugin
    id="nu.mine.kino.log4j"
    name="%pluginName"
    version="1.2.9"
    provider-name="%providerName">
    <runtime>
      <library name="lib/log4j-1.2.9.jar">
        <export name="*"/>
      </library>
    </runtime>
 </plugin>
としました。あとは通常通りプラグインとしてexportすれば完成です。
exportしたプラグインは${ECLIPSE_HOME}/plugin/ディレクトリに配置しておきます。


Log4jのjarを使用したい方はplugin.xmlで
 <requires>
   ......
   <import plugin="nu.mine.kino.log4j"/>
 </requires>
とすればOKです。これで各プラグインのディレクトリにはlog4j.jarをおかないでもLog4jを使用することができるようになりました。



----
この記事は
#vote(おもしろかった[12],そうでもない[3])
- http://wiki.eclipse.org/FAQ_How_can_I_share_a_JAR_among_various_plug-ins%3F -- [[tip's]] &new{2011-04-02 (土) 14:12:59};
- http://wiki.eclipse.org/FAQ_How_do_I_add_a_library_to_the_classpath_of_a_plug-in%3F --  &new{2011-04-02 (土) 14:13:59};
- sss --  &new{2017-10-11 (水) 11:58:47};

#comment
#topicpath


SIZE(10){現在のアクセス:&counter;}

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS