Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
6e5776c2
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
6e5776c2
编写于
10月 15, 2013
作者:
A
alanb
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8026398: Can't load jdk.Exported, ClassNotFoundException
Reviewed-by: chegar, mchung
上级
6aa59228
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
8 deletion
+16
-8
make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java
.../tools/src/build/tools/buildmetaindex/BuildMetaIndex.java
+16
-8
未找到文件。
make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java
浏览文件 @
6e5776c2
...
...
@@ -173,6 +173,12 @@ class JarMetaIndex {
*/
private
HashMap
<
String
,
HashSet
<
String
>>
knownPrefixMap
=
new
HashMap
<>();
/**
* Special value for the HashSet to indicate that there are classes in
* the top-level package.
*/
private
static
final
String
TOP_LEVEL
=
"TOP"
;
/*
* A class for mapping package prefixes to the number of
* levels of package elements to include.
...
...
@@ -212,7 +218,7 @@ class JarMetaIndex {
/*
* We add maximum 5 second level entries to "sun", "java" and
* We add maximum 5 second level entries to "sun", "j
dk", "j
ava" and
* "javax" entries. Tune this parameter to get a balance on the
* cold start and footprint.
*/
...
...
@@ -223,6 +229,7 @@ class JarMetaIndex {
JarMetaIndex
(
String
fileName
)
throws
IOException
{
jar
=
new
JarFile
(
fileName
);
knownPrefixMap
.
put
(
"sun"
,
new
HashSet
<
String
>());
knownPrefixMap
.
put
(
"jdk"
,
new
HashSet
<
String
>());
knownPrefixMap
.
put
(
"java"
,
new
HashSet
<
String
>());
knownPrefixMap
.
put
(
"javax"
,
new
HashSet
<
String
>());
}
...
...
@@ -336,12 +343,12 @@ class JarMetaIndex {
return
false
;
}
String
secondPkgElement
=
name
.
substring
(
firstSlashIndex
+
1
,
name
.
indexOf
(
"/"
,
firstSlashIndex
+
1
));
/* Add the second level package name to the corresponding hashset. */
if
(
secondPkgElement
!=
null
)
{
int
secondSlashIndex
=
name
.
indexOf
(
"/"
,
firstSlashIndex
+
1
);
if
(
secondSlashIndex
==
-
1
)
{
pkgSet
.
add
(
TOP_LEVEL
);
}
else
{
String
secondPkgElement
=
name
.
substring
(
firstSlashIndex
+
1
,
secondSlashIndex
);
pkgSet
.
add
(
secondPkgElement
);
}
...
...
@@ -368,8 +375,9 @@ class JarMetaIndex {
if
(
setSize
==
0
)
{
continue
;
}
else
if
(
setSize
>
JarMetaIndex
.
MAX_PKGS_WITH_KNOWN_PREFIX
)
{
indexSet
.
add
(
key
+
"/"
);
if
(
setSize
>
JarMetaIndex
.
MAX_PKGS_WITH_KNOWN_PREFIX
||
pkgSetStartsWithKey
.
contains
(
TOP_LEVEL
))
{
indexSet
.
add
(
key
+
"/"
);
}
else
{
/* If the set contains less than MAX_PKGS_WITH_KNOWN_PREFIX, add
* them to the indexSet of the MetaIndex object.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录