在Java API文档中profile(compact1,compact2,compact 3)的含义是什么?

时间:2014-12-24 07:37:16

标签: java javadoc

最近,我必须知道在Java 8 API文档中,对于某些类,有compact1compact2compact3等注释。

这些似乎被称为个人资料,您可以在概述页面上看到。 (请参见下图。)配置文件compact1,compact2,compact3未出现在Java 6或7 API文档中。

它们在Java 8 API doc中意味着什么?

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:21)

压缩配置文件是完整Java平台API的子集,允许使用较小的JRE运行。许多程序(特别是在嵌入式环境中)不需要像Swing或CORBA这样的库 - 它们只是浪费空间。来自Oracle Java SE Embedded 8 Compact Profiles Overview

  

紧凑配置文件是完整Java SE Platform API的子集。由于它们具有较小的存储空间,因此紧凑的配置文件可以使许多Java应用程序在资源受限的设备上运行。选择与应用程序的功能需求紧密匹配的紧凑配置文件可最大限度地减少用于未使用功能的存储。 Java SE Embedded 8中有新的嵌入式开发人员工具,包括jrecreate和jdeps,它们允许开发人员为平台定制Compact Profile运行时环境,并在平台开发期间查找Compact Profile依赖关系以进行分析。

     

紧凑型配置文件仅用于API选择;它们与Java虚拟机,正确的语言或工具无关。因此,必须注意将Java虚拟机支持的功能与所需的API支持相匹配。

该页面还列出了每个配置文件的内容。当前定义的配置文件都具有子集关系(compact2包括compact1,compact 3包括compact2)。

使用-profile javac选项来编译个人资料。如果来源使用配置文件中未提供的API,javac会抱怨,例如javac doc中的示例:

./javac -profile compact1 Paint.java
Paint.java:5: error: Applet is not available in profile 'compact1'
import java.applet.Applet;