Javaでプラグイン機構を持つプログラムを作成するページを色々巡ってみたのだけれど、プラグイン側のクラスの特定の方法が「決めうち」「META-INFに書く」のどちらかのページばかりだったので、それ以外の方法も一応あるよ、というメモ。 前提としては、プラグインはJarファイルで所定のディレクトリに置かれる、プラグインは処理をするために特定のインターフェースを実装している、というところまで。 JarファイルはZip形式でいろんなファイルが入っているだけなので、ファイルのエントリを引っ張ってくることも出来ます。 File pluginDir = new File("plugins"); for(File f : pluginDir.listFiles()){ JarFile jar = new JarFile(f); URLClassLoader loader = new URLClassLoa