#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;}