如何开始使用Java模块?

如何开始使用Java模块?,java,module,jvm,osgi,jboss-modules,Java,Module,Jvm,Osgi,Jboss Modules,我正在阅读OSGi和JBoss模块。我理解模块的用途——避免Jar地狱和冲突类——但如果我想编写一个使用它们的新应用程序,我不知道从哪里开始。是否有一个内核,我可以从它开始,然后加载其他模块?我不想运行Eclipse或Wildfly;我想用我自己的应用程序重新开始。模块世界你好 编辑:我正在使用IntelliJ,出于几个原因,我真的不想切换到Eclipse。因此,对于需要安装Eclipse插件的答案,我无能为力。OSGi将是首选。JBoss模块与其说是通用模块化解决方案,还不如说是JBoss内部

我正在阅读OSGi和JBoss模块。我理解模块的用途——避免Jar地狱和冲突类——但如果我想编写一个使用它们的新应用程序,我不知道从哪里开始。是否有一个内核,我可以从它开始,然后加载其他模块?我不想运行Eclipse或Wildfly;我想用我自己的应用程序重新开始。模块世界你好


编辑:我正在使用IntelliJ,出于几个原因,我真的不想切换到Eclipse。因此,对于需要安装Eclipse插件的答案,我无能为力。

OSGi将是首选。JBoss模块与其说是通用模块化解决方案,还不如说是JBoss内部的东西

要从OSGi应用程序开始,请查看。这是一个Eclipse插件,可以简化OSGi开发。从那里您可以创建一个“运行配置”,它是应用程序的定义。从那里,您还可以将应用程序导出到单个可执行JAR以分发应用程序

这是一个很好的开始。
另外,对于更高级的组件(REST、数据库、调度等),请查看

OSGi将是首选。JBoss模块与其说是通用模块化解决方案,还不如说是JBoss内部的东西

要从OSGi应用程序开始,请查看。这是一个Eclipse插件,可以简化OSGi开发。从那里您可以创建一个“运行配置”,它是应用程序的定义。从那里,您还可以将应用程序导出到单个可执行JAR以分发应用程序

这是一个很好的开始。

另外,对于更高级的组件(REST、数据库、调度等),请查看

尝试在途中从OSGi开始:。这是一个仍在开发中的项目,用于演示如何使用OSGi。

尝试从OSGi出发:。这是一个仍在开发中的项目,用于演示如何使用OSGi。

您正在尝试编写什么类型的应用程序?有几个,但主要是web应用程序。我可以使用Wildfly,但我想尝试一些更小的,比如Undertow+模块。也许这就是Wildfly的全部功能,但它看起来要大得多。我没有使用过undertow或Wildfly,但您可以在undertow应用程序中嵌入类似的内容。你看过ApacheKarafOSGi容器了吗?如果你真的想要IntelliJ支持模块化Java开发,那么我建议你告诉JetBrains你愿意为此付费:。与此同时,你不愿意尝试其他工具可能会阻碍你学习一些东西。我觉得这种态度令人费解。我是一名Eclipse用户,但如果IntelliJ甚至NetBeans为我想学习的东西提供支持,我会很乐意尝试。这并不意味着我将不得不为所有其他工作切换IDE。在我的例子中,我已经做了很多实验,有太多的东西,Eclipse和NetBeans就在其中。如果我不能在OSGi中编写“hello world”而不下载Eclipse插件,那么OSGi就不是我想要的技术。JBoss模块似乎完全符合我的要求,但显然有些人不同意这一点。我现在要用它们。你想写什么样的应用程序?有一些,但主要是web应用程序。我可以使用Wildfly,但我想尝试一些更小的,比如Undertow+模块。也许这就是Wildfly的全部功能,但它看起来要大得多。我没有使用过undertow或Wildfly,但您可以在undertow应用程序中嵌入类似的内容。你看过ApacheKarafOSGi容器了吗?如果你真的想要IntelliJ支持模块化Java开发,那么我建议你告诉JetBrains你愿意为此付费:。与此同时,你不愿意尝试其他工具可能会阻碍你学习一些东西。我觉得这种态度令人费解。我是一名Eclipse用户,但如果IntelliJ甚至NetBeans为我想学习的东西提供支持,我会很乐意尝试。这并不意味着我将不得不为所有其他工作切换IDE。在我的例子中,我已经做了很多实验,有太多的东西,Eclipse和NetBeans就在其中。如果我不能在OSGi中编写“hello world”而不下载Eclipse插件,那么OSGi就不是我想要的技术。JBoss模块似乎完全符合我的要求,但显然有些人不同意这一点。现在我将使用它们。谢谢,但是它们的教程需要Eclipse。我忘了在我的问题中添加我正在使用IntelliJ,而且我在这方面投入太多,无法为此切换IDE。谢谢,但是他们的教程需要Eclipse。我忘了补充我的问题,我正在使用IntelliJ,我在那里投入太多,无法为此切换IDE。谢谢,但我应该提到我没有使用Eclipse。我很好奇下面的链接是否会改变你对JBoss模块的看法?在你们回答之前,我的研究正把我带向那个方向。我知道这篇文章,但它并没有改变我的观点。请注意,我在过去确实使用过Jboss模块。一个大问题是缺少服务层,因为这是实际创建模块化应用程序的要求。模块化不仅仅是类加载……不幸的是,目前Bndtools只适用于Eclipse。不过,有一些工作正在将其移植到Intellij(由Intellij完成):谢谢,但我应该提到我没有使用Eclipse。我很好奇下面的链接是否会改变你对JBoss模块的看法?在你们回答之前,我的研究正把我带向那个方向。我知道这篇文章,但它并没有改变我的观点。请注意,我在过去确实使用过Jboss模块。一个大问题是缺少服务层,因为这是实际创建模块化应用程序的要求。模块化不仅仅是类加载……不幸的是,目前Bndtools只适用于Eclipse。目前正在进行将此端口移植到Intellij的工作(Intellij):