“模块项目属性”对话框:API 版本控制
另请参见
要打开“模块项目属性”对话框,请右键单击某个模块项目,然后选择“属性”。
“API 版本控制”页包含以下内容:
- 代码名称库:显示唯一标识模块的名称。在 MANIFEST.MF 文件中设置 OpenIDE-Module。MANIFEST.MF 文件中的该行将 JAR 文件标识为模块,并提供其代码名称。如果公开 API,则代码名称是其他模块声明对您的模块的依赖关系时用于表示该模块的名称。标准作法是使名称完全符合模块的包结构。
- 主发行版本。在 MANIFEST.MF 中指定主发行版本;可以为空或非负整数。例如,如果模块被命名为 org.myorg.module,则在 MANIFEST.MF 文件中主发行版本会显示为一个正斜杠和一个数字:org.myorg.module/1。如果模块公开某些 API,这通常是非常有用的;其他模块可以声明对该模块的特定规范版本的依赖关系,以便在依赖模块需要版本 2 而安装的模块版本为版本 1 时,不会装入该模块。对于没有要公开的 API 的模块,或者变化很小或不太可能发生变化的模块,则不需要主发行版本。
- 规范版本。在 MANIFEST.MF 文件中设置 OpenIDE-Module-Specification-Version。通常,在添加公开发布的方法(作为模块 API 的一部分)时,此数字将递增 0.1,因此版本号将按以下方式递增:1.0、1.1、1.2,依此类推。因此,需要使用 1.1 中引入的方法或类的其他模块可以声明对 1.1 的依赖关系,以便此版本不存在时,不会装入这些模块。
- 自动附加实现版本。
- 实现版本。在 MANIFEST.MF 文件中设置 OpenIDE-Module-Implementation-Version。在模块的 MANIFEST.MF 文件中,通过 nbproject/project.xml 文件的 public-packages 部分可以声明这些模块为其他模块提供了哪些可用包。如果模块试图使用另一个模块中的公共类,而该类实际上并不在另一个模块声明为其“公共包”的一个包中,则该模块在运行时将抛出 NoClassDefFoundException。
- 模块类型。
- 常规。在平台启动时装入的模块。
- 自动装入。仅当一个模块需要另一个模块时才装入的模块。例如,仅当依赖于某个库包装模块的模块需要它时,才装入该模块。
- Eager。如果满足模块的所有依赖关系,则会装入该模块。例如,为 NetBeans 文件提供着色的模块取决于提供编辑器的模块。因此,在禁用编辑器模块时,IDE 将自动禁用着色模块。
- 公共包。显示源目录中包含的所有包以及任何 class-path-extensions 的列表。如果选中,则在 nbproject/project.xml 文件的 public-packages 部分会包含该包。
- 仅将包导出到友元。仅当其下方的列表中至少有一个条目时处于选中状态。此列表可能包含其他模块的代码名称库,并且按排序进行排序。如果不为空,则包会保存在 friend-packages 中,并且在 nbproject/project.xml 中列出了友元。
- 提供的标记。在 MANIFEST.MF 文件中设置 OpenIDE-Module-Provides。
- 另请参见
- 关于 NetBeans 平台和模块开发
- 关于 NetBeans 平台
法律声明