几天前,我改用IntelliJ IDEA,并围绕IDE进行了一些研究。就像.iml,.idea等文件/目录一样。 但是我不知道'src'文件夹是什么。这里的其他答案表明它是一个模块,但是我在JDK 1.8上,它不具有JDK 9的模块化功能。那该文件夹又是什么呢?
答案 0 :(得分:2)
您要混合两种或三种不同的“模块”。
在一个Maven驱动的项目中,这可能是当今Java开发人员最常用的,一个项目可以由多个子项目组成,每个子项目分别编译。这些子项目称为modules in Maven。
在像Maven,Gradle和Ivy之类的开源代码和依赖项项目管理工具兴起之前的几年,IDE各自拥有自己的专有项目管理系统和元数据文件格式。
如果我没记错的话,用于定义项目的IntelliJ专有系统包括“模块”。
如果您在项目中使用专有的项目工具,强烈建议您从新的Maven驱动的项目开始。 Maven带来了一些学习曲线,但是值得这样做,因为它可以节省很多时间和以后的麻烦。另外,如果您想切换工具,则可以轻松地将Maven项目移动到另一个IDE。
Java 9除了 package 名称空间之外,还对类的组织方式进行了重大补充。正式称为Java Platform Module System。也以项目代号 Project Jigsaw 非正式地称为。
模块系统为物理上捆绑类和JVM定义了分发格式。以前与所有JVM捆绑在一起的标准类现在已重新组合为单独的Java模块。现在,您可以构建一个包含自己的JVM的控制台应用程序或桌面应用程序,其中仅包含应用程序实际使用的标准类。可以省略标准Java类的整个模块,从而减小了最终应用程序的大小。
此模块系统是与上面讨论的其他两个项目“模块”类型不同的概念。