本文整理汇总了Java中javax.lang.model.SourceVersion.values方法的典型用法代码示例。如果您正苦于以下问题:Java SourceVersion.values方法的具体用法?Java SourceVersion.values怎么用?Java SourceVersion.values使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.lang.model.SourceVersion
的用法示例。
在下文中一共展示了SourceVersion.values方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getRuntimeSourceVersion
import javax.lang.model.SourceVersion; //导入方法依赖的package包/类
private static SourceVersion getRuntimeSourceVersion() {
final String specVer = System.getProperty("java.specification.version", ""); //NOI18N
final String parts[] = specVer.split("\\."); //NOI18N
try {
int major;
int minor;
if (parts.length == 1) {
major = Integer.parseInt(parts[0]);
minor = 0;
} else if (parts.length == 2) {
major = Integer.parseInt(parts[0]);
minor = Integer.parseInt(parts[1]);
} else {
return SourceVersion.RELEASE_5;
}
final SourceVersion[] sourceVersions = SourceVersion.values();
do {
final int ordinal = major >= 9 ? major : minor;
if (sourceVersions.length > ordinal) {
return sourceVersions[ordinal];
}
//Downgrade
if (major > 9) {
major -= 1;
} else if (major == 9) {
major = 1;
minor = 8;
} else {
minor -= 1;
}
} while ((major > 1) || (minor >= 0));
} catch (NumberFormatException e) {
logger.log(
Level.WARNING,
"Invalid java.specification.version: {0}, using 1.5", //NOI18N
specVer);
}
return SourceVersion.RELEASE_5;
}