【发布时间】:2015-01-29 21:30:18
【问题描述】:
我一直在网上搜索一个关于我将要描述的内容的好教程的链接,但我还没有找到它。我希望这里的人已经知道在哪里可以找到它并可以在此处发布指向它的链接。
我想知道如何使用 OSGi/Equinox 构建一个应用程序(游戏、业务或其他),以允许稍后添加未知内容的库。
这个想法从我第一次使用 Minecraft Forge 时就让我着迷,我所要做的就是将 JAR 放到一个可能被标识为类路径或其他东西的 mods 目录中。
我首先在 .NET 中研究了该主题,并在“System.AddIn”和“System.AddIn.Contract”库中找到了合适的响应。这里有一个很好的教程:MSDN - Creating an Extensible Application。这工作得很好。您创建一个定义插件类型的接口和协定的管道,然后只需将类库放到正确的目录中,就可以稍后添加插件。
我现在正在积极研究如何在 Java 中做同样的事情,我目前正在研究 OSGi 插件。但是,到目前为止,我遇到的所有示例都集中在设计时已知的捆绑包上。而且,还有“DynamicImport-Package”的对话,但是目前看到的资源对这个不以为然。
所以问题是,有没有人知道一个资源,它讨论了一种“微笑”的方法,用于动态发现和加载满足特定接口的未知捆绑(类库)?
【问题讨论】:
标签: java eclipse plugins osgi equinox