Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
roginluo
Jenkins
提交
32d5c23f
J
Jenkins
项目概览
roginluo
/
Jenkins
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
Jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
32d5c23f
编写于
1月 03, 2012
作者:
K
Kohsuke Kawaguchi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
a bit of simplification
上级
386618dc
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
20 addition
and
17 deletion
+20
-17
core/src/main/java/hudson/init/InitStrategy.java
core/src/main/java/hudson/init/InitStrategy.java
+20
-17
未找到文件。
core/src/main/java/hudson/init/InitStrategy.java
浏览文件 @
32d5c23f
...
...
@@ -6,6 +6,7 @@ import org.jvnet.hudson.reactor.Task;
import
java.io.File
;
import
java.io.FilenameFilter
;
import
java.io.IOException
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
...
...
@@ -39,26 +40,26 @@ public class InitStrategy {
* and when that happens, Jenkins will ignore all but the first one in the list.
*/
public
List
<
File
>
listPluginArchives
(
PluginManager
pm
)
throws
IOException
{
File
[]
jpi
=
pm
.
rootDir
.
listFiles
(
new
FilterByExtension
(
".jpi"
));
// plugin jar file
File
[]
hpi
=
pm
.
rootDir
.
listFiles
(
new
FilterByExtension
(
".hpi"
));
// plugin jar file (for backward compatibility)
File
[]
jpl
=
pm
.
rootDir
.
listFiles
(
new
FilterByExtension
(
".jpl"
));
// linked plugin. for debugging.
File
[]
hpl
=
pm
.
rootDir
.
listFiles
(
new
FilterByExtension
(
".hpl"
));
// linked plugin. for debugging. (for backward compatibility)
if
(
hpi
==
null
||
hpl
==
null
)
throw
new
IOException
(
"Jenkins is unable to create "
+
pm
.
rootDir
+
"\nPerhaps its security privilege is insufficient"
);
List
<
File
>
r
=
new
ArrayList
<
File
>();
// the ordering makes sure that during the debugging we get proper precedence among duplicates.
// for example, while doing "mvn jpi:run" or "mvn hpi:run" on a plugin that's bundled with Jenkins, we want to the
// *.jpl file to override the bundled jpi/hpi file.
getBundledPluginsFromProperty
(
r
);
r
.
addAll
(
Arrays
.
asList
(
jpl
));
r
.
addAll
(
Arrays
.
asList
(
jpi
));
r
.
addAll
(
Arrays
.
asList
(
hpl
));
r
.
addAll
(
Arrays
.
asList
(
hpi
));
listPluginFiles
(
pm
,
r
,
".jpi"
,
".hpi"
);
// plugin jar files
listPluginFiles
(
pm
,
r
,
".jpl"
,
".hpl"
);
// linked plugin. for debugging.
return
r
;
}
private
void
listPluginFiles
(
PluginManager
pm
,
Collection
<
File
>
all
,
String
...
extensions
)
throws
IOException
{
File
[]
files
=
pm
.
rootDir
.
listFiles
(
new
FilterByExtension
(
extensions
));
if
(
files
==
null
)
throw
new
IOException
(
"Jenkins is unable to create "
+
pm
.
rootDir
+
"\nPerhaps its security privilege is insufficient"
);
all
.
addAll
(
Arrays
.
asList
(
files
));
}
/**
* Lists up additional bundled plugins from the system property.
...
...
@@ -105,16 +106,18 @@ public class InitStrategy {
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
InitStrategy
.
class
.
getName
());
private
static
class
FilterByExtension
implements
FilenameFilter
{
private
final
String
extension
;
private
final
List
<
String
>
extensions
;
public
FilterByExtension
(
String
extension
)
{
this
.
extension
=
extension
;
public
FilterByExtension
(
String
...
extensions
)
{
this
.
extension
s
=
Arrays
.
asList
(
extensions
)
;
}
public
boolean
accept
(
File
dir
,
String
name
)
{
return
name
.
endsWith
(
extension
)
// plugin jar file
||
name
.
endsWith
(
".hpl"
)
// linked plugin. for debugging. (for backward compatibility)
||
name
.
endsWith
(
".jpl"
);
// linked plugin. for debugging.
for
(
String
extension
:
extensions
)
{
if
(
name
.
endsWith
(
extension
))
return
true
;
}
return
false
;
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录