Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
adaptation-master
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
912协同工作系统
项目监控管理工具
adaptation-master
Commits
2b1720c9
提交
2b1720c9
authored
12月 18, 2019
作者:
zhangshuang
浏览文件
操作
浏览文件
下载
差异文件
zs
上级
18395001
1e059a78
隐藏空白字符变更
内嵌
并排
正在显示
38 个修改的文件
包含
1576 行增加
和
337 行删除
+1576
-337
pom.xml
pom.xml
+17
-1
AdaptationMasterApplication.java
...om/zjty/adaptationmaster/AdaptationMasterApplication.java
+4
-0
CheckCenterController.java
...ationmaster/adaptor/controller/CheckCenterController.java
+35
-0
CompileController.java
...daptationmaster/adaptor/controller/CompileController.java
+24
-0
DeployController.java
...adaptationmaster/adaptor/controller/DeployController.java
+23
-0
InspectController.java
...daptationmaster/adaptor/controller/InspectController.java
+17
-0
ProjectController.java
...daptationmaster/adaptor/controller/ProjectController.java
+5
-0
SocketController.java
...adaptationmaster/adaptor/controller/SocketController.java
+0
-59
WebSocketServer.java
.../adaptationmaster/adaptor/controller/WebSocketServer.java
+78
-0
Project.java
...ava/com/zjty/adaptationmaster/adaptor/entity/Project.java
+6
-17
Report.java
...java/com/zjty/adaptationmaster/adaptor/entity/Report.java
+21
-9
Rule.java
...n/java/com/zjty/adaptationmaster/adaptor/entity/Rule.java
+3
-3
ProjectDao.java
.../zjty/adaptationmaster/adaptor/repository/ProjectDao.java
+1
-0
DeployService.java
.../zjty/adaptationmaster/adaptor/service/DeployService.java
+10
-0
AdaptationServiceImpl.java
...ionmaster/adaptor/service/Impl/AdaptationServiceImpl.java
+2
-0
Adaptor.java
...m/zjty/adaptationmaster/adaptor/service/Impl/Adaptor.java
+5
-9
DeployServiceImpl.java
...ptationmaster/adaptor/service/Impl/DeployServiceImpl.java
+41
-0
InspectServiceImpl.java
...tationmaster/adaptor/service/Impl/InspectServiceImpl.java
+26
-0
Inspectors.java
...jty/adaptationmaster/adaptor/service/Impl/Inspectors.java
+0
-217
ProjectServiceImpl.java
...tationmaster/adaptor/service/Impl/ProjectServiceImpl.java
+7
-0
InspectService.java
...zjty/adaptationmaster/adaptor/service/InspectService.java
+7
-0
ProjectService.java
...zjty/adaptationmaster/adaptor/service/ProjectService.java
+2
-0
ValueConfig.java
...zjty/adaptationmaster/base/configuration/ValueConfig.java
+4
-0
WebSocketConfig.java
.../adaptationmaster/base/configuration/WebSocketConfig.java
+4
-16
DeployStatus.java
...a/com/zjty/adaptationmaster/base/entity/DeployStatus.java
+14
-0
ProjectStatueFromMiddleware.java
...tationmaster/base/entity/ProjectStatueFromMiddleware.java
+14
-0
Const.java
...main/java/com/zjty/adaptationmaster/base/enums/Const.java
+4
-0
ApusicDeployer.java
.../java/com/zjty/adaptationmaster/utils/ApusicDeployer.java
+54
-0
Connector.java
src/main/java/com/zjty/adaptationmaster/utils/Connector.java
+14
-0
Inspector.java
src/main/java/com/zjty/adaptationmaster/utils/Inspector.java
+208
-0
MavenCompiler.java
...n/java/com/zjty/adaptationmaster/utils/MavenCompiler.java
+78
-0
MyXmlReader.java
...ain/java/com/zjty/adaptationmaster/utils/MyXmlReader.java
+26
-0
PropertiesReader.java
...ava/com/zjty/adaptationmaster/utils/PropertiesReader.java
+22
-0
ReadedFileTask.java
.../java/com/zjty/adaptationmaster/utils/ReadedFileTask.java
+3
-4
StringCompareUtil.java
...va/com/zjty/adaptationmaster/utils/StringCompareUtil.java
+2
-2
YamlReader.java
...main/java/com/zjty/adaptationmaster/utils/YamlReader.java
+116
-0
test.yml
src/main/resources/test.yml
+17
-0
Test1.java
src/test/java/com/zjty/adaptationmaster/Test1.java
+662
-0
没有找到文件。
pom.xml
浏览文件 @
2b1720c9
...
...
@@ -93,7 +93,7 @@
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-websocket
</artifactId>
<version>
4.3.17.RELEASE
</version
>
<!-- <version>4.3.17.RELEASE</version>--
>
</dependency>
<dependency>
<groupId>
junit
</groupId>
...
...
@@ -110,6 +110,22 @@
<artifactId>
jpa-spec
</artifactId>
<version>
3.2.1
</version>
</dependency>
<dependency>
<groupId>
org.apache.maven.shared
</groupId>
<artifactId>
maven-invoker
</artifactId>
<version>
3.0.1
</version>
</dependency>
<dependency>
<groupId>
ch.ethz.ganymed
</groupId>
<artifactId>
ganymed-ssh2
</artifactId>
<version>
build210
</version>
</dependency>
<dependency>
<groupId>
org.yaml
</groupId>
<artifactId>
snakeyaml
</artifactId>
<version>
1.25
</version>
</dependency>
</dependencies>
<build>
...
...
src/main/java/com/zjty/adaptationmaster/AdaptationMasterApplication.java
浏览文件 @
2b1720c9
...
...
@@ -2,8 +2,12 @@ package com.zjty.adaptationmaster;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.data.jpa.repository.config.EnableJpaRepositories
;
import
org.springframework.scheduling.annotation.EnableScheduling
;
import
org.springframework.scheduling.annotation.Scheduled
;
@SpringBootApplication
@EnableScheduling
public
class
AdaptationMasterApplication
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/controller/CheckCenterController.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.servlet.ModelAndView
;
import
java.io.IOException
;
@Controller
@RequestMapping
(
"/checkcenter"
)
public
class
CheckCenterController
{
//页面请求
@GetMapping
(
"/socket/{cid}"
)
public
ModelAndView
socket
(
@PathVariable
String
cid
)
{
ModelAndView
mav
=
new
ModelAndView
(
"/socket"
);
mav
.
addObject
(
"cid"
,
cid
);
return
mav
;
}
//推送数据接口
@ResponseBody
@RequestMapping
(
"/socket/push/{cid}"
)
public
ServerResponse
pushToWeb
(
@PathVariable
String
cid
,
String
message
)
{
// try {
// WebSocketServer.sendInfo(cid,message);
// } catch (IOException e) {
// e.printStackTrace();
// return ServerResponse.error(cid+"#"+e.getMessage());
// }
return
ServerResponse
.
success
(
cid
);
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/CompileController.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
com.zjty.adaptationmaster.utils.MavenCompiler
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.UUID
;
@RestController
@RequestMapping
(
"/compile"
)
public
class
CompileController
{
@GetMapping
(
"/getUUID"
)
public
ServerResponse
getUUID
(){
return
ServerResponse
.
success
(
UUID
.
randomUUID
().
toString
());
}
@GetMapping
(
"/compile"
)
public
ServerResponse
compile
(
String
UUID
){
// MavenCompiler mavenCompiler = new MavenCompiler("C:\\home\\project\\rsc\\hrmbclient\\pom.xml","D:\\apache-maven-3.5.4",UUID);
// mavenCompiler.compiler();
return
ServerResponse
.
success
();
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/DeployController.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
com.zjty.adaptationmaster.adaptor.service.DeployService
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
@Controller
@RequestMapping
(
"/deploy"
)
public
class
DeployController
{
@Autowired
private
DeployService
deployService
;
@GetMapping
(
"/compileProject"
)
public
ServerResponse
compile
(
int
projectId
,
String
uuid
){
return
deployService
.
compile
(
projectId
,
uuid
);
}
@GetMapping
(
"/deployProject"
)
public
ServerResponse
deploy
(
int
projectId
,
String
uuid
){
return
deployService
.
deploy
(
projectId
,
uuid
);
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/InspectController.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
com.zjty.adaptationmaster.adaptor.service.InspectService
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
public
class
InspectController
{
@Autowired
private
InspectService
inspectService
;
public
ServerResponse
inspect
(
int
projectId
){
return
inspectService
.
inspect
(
projectId
);
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/ProjectController.java
浏览文件 @
2b1720c9
...
...
@@ -40,4 +40,9 @@ public class ProjectController {
return
projectService
.
findProject
(
page
,
project
);
}
@PostMapping
(
"/getProjectState"
)
public
ServerResponse
getProjectState
(){
return
projectService
.
deployList
();
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/SocketController.java
deleted
100644 → 0
浏览文件 @
18395001
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.socket.CloseStatus
;
import
org.springframework.web.socket.WebSocketHandler
;
import
org.springframework.web.socket.WebSocketMessage
;
import
org.springframework.web.socket.WebSocketSession
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
@Controller
@RequestMapping
(
"/connect"
)
public
class
SocketController
implements
WebSocketHandler
{
int
i
=
0
;
// @GetMapping("/get")
// public void getConnect(HttpServletResponse response){
// while (i<10){
// try {
// response.getWriter().write("第"+i+++"句话。。。");
// } catch (IOException e) {
// e.printStackTrace();
// }
// try {
// Thread.currentThread().sleep(2000);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
// }
// }
@Override
public
void
afterConnectionEstablished
(
WebSocketSession
webSocketSession
)
throws
Exception
{
}
@Override
public
void
handleMessage
(
WebSocketSession
webSocketSession
,
WebSocketMessage
<?>
webSocketMessage
)
throws
Exception
{
}
@Override
public
void
handleTransportError
(
WebSocketSession
webSocketSession
,
Throwable
throwable
)
throws
Exception
{
}
@Override
public
void
afterConnectionClosed
(
WebSocketSession
webSocketSession
,
CloseStatus
closeStatus
)
throws
Exception
{
}
@Override
public
boolean
supportsPartialMessages
()
{
return
false
;
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/controller/WebSocketServer.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
controller
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.stereotype.Component
;
import
javax.websocket.*
;
import
javax.websocket.server.PathParam
;
import
javax.websocket.server.ServerEndpoint
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.Map
;
@ServerEndpoint
(
"/webServer/{projectId}"
)
@Component
public
class
WebSocketServer
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
getClass
());
private
static
Map
<
String
,
WebSocketServer
>
map
=
new
HashMap
<>();
private
Session
session
;
private
String
uuid
;
@OnOpen
public
void
onOpen
(
Session
session
,
@PathParam
(
"projectId"
)
String
uuid
){
this
.
session
=
session
;
this
.
uuid
=
uuid
;
//session.getOpenSessions().
map
.
put
(
uuid
,
this
);
try
{
sendMessage
(
"连接成功"
);
}
catch
(
IOException
e
)
{
logger
.
error
(
"websocket IO异常"
);
}
logger
.
info
(
"连接成功"
+
session
.
getId
());
}
@OnClose
public
void
onClose
(
Session
session
){
map
.
remove
(
this
.
uuid
);
logger
.
info
(
"连接关闭"
+
session
.
getId
());
}
@OnMessage
public
void
onMessage
(
Session
session
,
String
message
){
// try {
//map.get(uuid).sendMessage(message);
logger
.
info
(
uuid
+
"sendMsg"
+
message
);
// } catch (IOException e) {
// e.printStackTrace();
// }
}
@OnError
public
void
onError
(
Session
session
,
Throwable
error
){
logger
.
info
(
error
.
getMessage
());
error
.
printStackTrace
();
}
/**
* 实现服务器主动推送
*/
public
void
sendMessage
(
String
message
)
throws
IOException
{
this
.
session
.
getBasicRemote
().
sendText
(
message
);
}
public
static
void
sendInfo
(
String
sessionId
,
String
msg
,
String
action
,
String
state
,
String
projectName
){
try
{
map
.
get
(
sessionId
).
sendMessage
(
LocalDateTime
.
now
()+
"\t"
+
projectName
+
"\t"
+
action
+
"\t"
+
state
+
"\t"
+
msg
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/entity/Project.java
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
entity
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
...
...
@@ -24,33 +22,24 @@ public class Project {
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
Integer
id
;
@Column
(
unique
=
true
)
private
String
projectName
;
//项目名称
private
String
language
;
//语言
private
String
framework
;
//架构
private
String
isSeparate
;
//前后端是否分离
private
String
databaseType
;
//数据库类型
private
String
codeUrl
;
//当前源码源码路径
private
Integer
status
=
1
;
//状态(0:删除 1:未删除)
@Temporal
(
TemporalType
.
TIMESTAMP
)
private
Date
startTime
=
new
Date
();
//开始时间
@Temporal
(
TemporalType
.
TIMESTAMP
)
private
Date
updateTime
;
//更新时间
@OneToMany
(
mappedBy
=
"project"
,
cascade
=
CascadeType
.
ALL
,
fetch
=
FetchType
.
EAGER
)
private
List
<
Rule
>
rules
;
//自定义的规则
@ManyToMany
@JoinTable
(
name
=
"project_ruleSet"
,
joinColumns
=
@JoinColumn
(
name
=
"p_id"
,
referencedColumnName
=
"id"
),
inverseJoinColumns
=
@JoinColumn
(
name
=
"r_id"
,
referencedColumnName
=
"id"
))
private
List
<
RuleSet
>
ruleSets
;
//规则集
private
boolean
compileSuccess
=
false
;
@OneToOne
private
Report
report
;
private
boolean
deploySuccess
=
false
;
}
src/main/java/com/zjty/adaptationmaster/adaptor/entity/Report.java
浏览文件 @
2b1720c9
...
...
@@ -4,23 +4,35 @@ import lombok.AllArgsConstructor;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.Entity
;
import
java.nio.file.Path
;
import
java.util.List
;
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
Report
{
public
String
type
;
//语言类型
public
String
structure
;
//项目架构
public
String
sqlType
;
//数据库类型
private
Language
language
;
//语言
private
String
framework
;
//架构
private
Separate
isSeparate
;
//前后端是否分离
private
DatabaseType
databaseType
;
//数据库类型
private
String
compileFilePath
;
//项目编译文件,如果是maven项目,用maven编译,那么就是pom.xml
public
DependenceManagement
dependenceManagement
;
//版本管理方式
public
Path
depMagFilepath
;
//版本管理文件地址
@Override
public
String
toString
(){
return
""
+
type
+
structure
+
sqlType
;
}
public
List
<
String
>
jarPath
;
//依赖文件的地址列表,用于编译,如果不是用版本管理工具
private
String
packagePath
;
public
static
enum
DependenceManagement
{
public
enum
DependenceManagement
{
MAVEN
,
GRADLE
,
ANT
}
public
enum
Separate
{
WHOLE
,
SEPARATE
}
public
enum
DatabaseType
{
MYSQL
,
ORACLE
,
SQLSERVER
,
POSTGRE
}
public
enum
Language
{
JAVA
,
PYTHON
,
CPP
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/entity/Rule.java
浏览文件 @
2b1720c9
...
...
@@ -41,15 +41,15 @@ public class Rule {
private
String
target
;
//文本匹配目标
private
String
replacing
;
//更改方式 全文替换/正则替换
public
static
enum
MatchType
{
public
enum
MatchType
{
PATH
,
NAME
,
SUFFIX
}
public
static
enum
TextMatch
{
public
enum
TextMatch
{
AREA
}
public
static
enum
DealWay
{
public
enum
DealWay
{
REPLACE
,
INSERTAFTER
,
INSERTBEFORE
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/repository/ProjectDao.java
浏览文件 @
2b1720c9
...
...
@@ -11,4 +11,5 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
* @Date : 2019-12-07 10:55
*/
public
interface
ProjectDao
extends
JpaRepository
<
Project
,
Integer
>,
JpaSpecificationExecutor
{
Project
findByProjectName
(
String
projectName
);
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/DeployService.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
service
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
public
interface
DeployService
{
ServerResponse
compile
(
int
projectId
,
String
uuid
);
ServerResponse
deploy
(
int
projectId
,
String
uuid
);
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/AdaptationServiceImpl.java
浏览文件 @
2b1720c9
...
...
@@ -4,6 +4,7 @@ import com.zjty.adaptationmaster.adaptor.entity.Rule;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
com.zjty.adaptationmaster.adaptor.service.AdaptationService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.messaging.simp.SimpMessagingTemplate
;
import
org.springframework.stereotype.Service
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -16,6 +17,7 @@ public class AdaptationServiceImpl implements AdaptationService {
@Autowired
private
Adaptor
adaptor
;
@Override
public
ServerResponse
adapt
(
HttpServletResponse
response
)
throws
IOException
{
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/Adaptor.java
浏览文件 @
2b1720c9
...
...
@@ -10,6 +10,7 @@ import org.springframework.stereotype.Component;
import
java.io.*
;
import
java.nio.charset.Charset
;
import
java.nio.charset.StandardCharsets
;
import
java.nio.file.*
;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.util.*
;
...
...
@@ -23,6 +24,7 @@ public class Adaptor {
//private AdaptationDetailLogEntityDao adaptationDetailLogEntityDao;
@Autowired
private
OriginalFileDao
originalFileDao
;
//@Value("${base.path}")
private
String
basePath
=
Const
.
CONSOLE
;
//线程池数量,合适的线程数量能让程序更快
...
...
@@ -98,7 +100,7 @@ public class Adaptor {
WriterBySort
bySort
=
new
WriterBySort
();
File
newFile
=
file
.
toFile
();
newFile
.
createNewFile
();
OutputStreamWriter
writer
=
new
OutputStreamWriter
(
new
FileOutputStream
(
newFile
),
"utf-8"
);
OutputStreamWriter
writer
=
new
OutputStreamWriter
(
new
FileOutputStream
(
newFile
),
StandardCharsets
.
UTF_8
);
bySort
.
setWriter
(
writer
);
for
(
String
s
:
Files
.
readAllLines
(
originalPath
,
Charset
.
forName
(
"utf-8"
)))
{
if
(
linesRepository
.
put
(
s
))
{
...
...
@@ -191,10 +193,7 @@ public class Adaptor {
if
(
readedFiles
==
null
)
readedFiles
=
new
ArrayList
<>();
readedFiles
.
add
(
new
StringBuilder
(
readedFile
));
count
+=
readedFile
.
length
();
if
(
count
>
LIMIT
){
return
true
;
}
return
false
;
return
count
>
LIMIT
;
}
}
...
...
@@ -213,10 +212,7 @@ public class Adaptor {
if
(
readedFiles
==
null
)
readedFiles
=
new
ArrayList
<>();
readedFiles
.
add
(
readedFile
);
count
+=
readedFile
.
getAttributes
().
size
();
if
(
count
>
LIMIT
){
return
true
;
}
return
false
;
return
count
>
LIMIT
;
}
}
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/DeployServiceImpl.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
service
.
Impl
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.adaptor.repository.ProjectDao
;
import
com.zjty.adaptationmaster.adaptor.service.DeployService
;
import
com.zjty.adaptationmaster.base.enums.Const
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
com.zjty.adaptationmaster.utils.ApusicDeployer
;
import
com.zjty.adaptationmaster.utils.MavenCompiler
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
@Service
public
class
DeployServiceImpl
implements
DeployService
{
@Autowired
private
ProjectDao
projectDao
;
@Override
public
ServerResponse
compile
(
int
projectId
,
String
uuid
)
{
// Project project = new Project();
// project.setCompileFilePath("C:\\home\\project\\rsc\\hrmbclient\\pom.xml");
// project.setDependenceManagement(Report.DependenceManagement.MAVEN);
Project
project
=
projectDao
.
getOne
(
projectId
);
if
(
project
.
getReport
()==
null
)
return
ServerResponse
.
error
(
"请进行项目体检或完善项目信息"
);
switch
(
project
.
getReport
().
getDependenceManagement
())
{
case
MAVEN:
new
MavenCompiler
(
project
,
Const
.
MAVENHOME
,
uuid
).
compiler
();
}
return
ServerResponse
.
success
(
project
);
}
@Override
public
ServerResponse
deploy
(
int
projectId
,
String
uuid
)
{
// Project project = new Project();
// project.setPackagePath("/home/user/Desktop/hrmanager-0.0.1-SNAPSHOT.war");
Project
project
=
projectDao
.
getOne
(
projectId
);
new
ApusicDeployer
(
Const
.
CTLPATH
,
Const
.
MAVENHOME
).
deploy
(
project
,
uuid
);
return
ServerResponse
.
success
(
project
);
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/InspectServiceImpl.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
service
.
Impl
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.adaptor.repository.ProjectDao
;
import
com.zjty.adaptationmaster.adaptor.service.InspectService
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
com.zjty.adaptationmaster.utils.Inspector
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
@Service
public
class
InspectServiceImpl
implements
InspectService
{
@Autowired
private
ProjectDao
projectDao
;
@Transactional
@Override
public
ServerResponse
inspect
(
int
projectId
)
{
Project
project
=
projectDao
.
getOne
(
projectId
);
return
ServerResponse
.
success
(
new
Inspector
(
project
,
new
HashMap
<>(),
new
HashMap
<>(),
new
ArrayList
<>()).
inspect
());
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/Inspectors.java
deleted
100644 → 0
浏览文件 @
18395001
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
service
.
Impl
;
import
com.zjty.adaptationmaster.utils.StringCompareUtil
;
import
com.zjty.adaptationmaster.adaptor.entity.Report
;
import
java.io.IOException
;
import
java.nio.file.*
;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 项目体检,根据既定特征值,
* 扫描、统计、分析项目特征,
* 生成报告
*
*/
public
class
Inspectors
{
private
String
path
;
private
Map
<
String
,
Counter
>
matchMap
;
//后缀计数器
//特定后缀文件的地址集合
private
List
<
Path
>
propertiesConfigPaths
=
new
ArrayList
<>();
private
List
<
Path
>
ymlConfigPaths
=
new
ArrayList
<>();
private
List
<
Path
>
xmlConfigPaths
=
new
ArrayList
<>();
//版本管理配置文件地址
private
Path
pomPath
;
private
boolean
havePom
=
false
;
private
boolean
haveIvy
=
false
;
public
List
<
String
>
matchStrings
;
private
Report
report
=
new
Report
();
public
void
setPath
(
String
path
)
{
this
.
path
=
path
;
}
public
void
setMatchMap
(
Map
<
String
,
Counter
>
matchMap
)
{
this
.
matchMap
=
matchMap
;
}
public
static
void
main
(
String
[]
args
)
{
Inspectors
inspectors
=
new
Inspectors
();
inspectors
.
setPath
(
"C:\\Users\\wyl\\Desktop\\testReplace"
);
Map
<
String
,
Counter
>
map
=
new
HashMap
<>();
map
.
put
(
"java"
,
new
Counter
());
map
.
put
(
"jsp"
,
new
Counter
());
map
.
put
(
"html"
,
new
Counter
());
inspectors
.
setMatchMap
(
map
);
inspectors
.
inspect
();
//打印分析数据
for
(
Map
.
Entry
<
String
,
Counter
>
entry:
map
.
entrySet
())
{
System
.
out
.
println
(
"项目中"
+
entry
.
getKey
()+
"类型文件共有"
+
entry
.
getValue
().
getI
()+
"个"
);
}
//打印体检报告
System
.
out
.
println
(
inspectors
.
analysis
());
}
/**
* FileVisitResult.CONTINUE 继续遍历
* FileVisitResult.TERMINATE 中止访问
* FileVisitResult.SKIP_SIBLINGS 不访问同级的文件或目录
* FileVisitResult.SKIP_SUBTREE 不访问子目录
*/
public
void
inspect
(){
try
{
String
glob
=
"glob:**/*.txt"
;
final
PathMatcher
pathMatcher
=
FileSystems
.
getDefault
().
getPathMatcher
(
glob
);
Files
.
walkFileTree
(
Paths
.
get
(
path
),
new
FileVisitor
<
Path
>()
{
@Override
public
FileVisitResult
preVisitDirectory
(
Path
dir
,
BasicFileAttributes
attrs
)
throws
IOException
{
//判断后缀
for
(
Map
.
Entry
<
String
,
Counter
>
s
:
matchMap
.
entrySet
())
{
if
(
dir
.
endsWith
(
s
.
getKey
()))
{
s
.
getValue
().
plus
();
}
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFile
(
Path
file
,
BasicFileAttributes
attrs
)
throws
IOException
{
boolean
matches
=
pathMatcher
.
matches
(
file
);
for
(
String
s:
matchStrings
){
}
if
(
file
.
endsWith
(
"properties"
))
{
propertiesConfigPaths
.
add
(
file
);
}
if
(
file
.
endsWith
(
"yml"
)){
ymlConfigPaths
.
add
(
file
);
}
if
(
file
.
endsWith
(
"xml"
)){
xmlConfigPaths
.
add
(
file
);
if
(
file
.
endsWith
(
"pom.xml"
)){
havePom
=
true
;
pomPath
=
file
;
}
else
if
(
file
.
endsWith
(
"ivy.xml"
)){
haveIvy
=
true
;
pomPath
=
file
;
}
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFileFailed
(
Path
file
,
IOException
exc
)
throws
IOException
{
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
postVisitDirectory
(
Path
dir
,
IOException
exc
)
throws
IOException
{
return
FileVisitResult
.
CONTINUE
;
}
});
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
public
Report
analysis
(){
if
(
matchMap
.
get
(
"java"
).
getI
()>
0
){
report
.
setType
(
"java"
);
}
if
(
matchMap
.
get
(
"jsp"
).
getI
()>
0
){
report
.
setStructure
(
"whole"
);
}
if
(
matchMap
.
get
(
"html"
).
getI
()>
0
){
report
.
setStructure
(
"separation"
);
}
for
(
Path
path:
propertiesConfigPaths
){
try
{
for
(
String
s:
Files
.
readAllLines
(
path
)){
int
index
=
StringCompareUtil
.
compare
(
s
,
"spring.datasource.driver-class-name"
);
if
(
index
>-
1
){
if
(!
s
.
startsWith
(
"#"
)){
/**
* MySQL数据库:
*
* 1)驱动包:https://mvnrepository.com/artifact/mysql/mysql-connector-java(下载路径)
*
* 2)驱动类名:com.mysql.jdbc.Driver
*
* 3)JDBC的URL:jdbc:mysql://IP地址:端口号/数据库名字
*
* 注:端口号缺省为:3306
*
* SQL server数据库:
*
* 1)驱动包:https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc4(下载路径)
*
* 2)驱动类名:com.microsoft.jdbc.sqlserver.SQLServerDriver
*
* 3)JDBC的URL:jdbc:microsoft:sqlserver://IP地址:端口号;DatabaseName=数据库名
*
* 4)sqljdbc和sqljdbc4区别:https://blog.csdn.net/cainiao_M/article/details/53404222
*
* 注:端口号缺省为:1433
*
* Oracle数据库:
*
* 1)驱动包:https://mvnrepository.com/artifact/com.oracle/ojdbc6(下载路径)
*
* 2)驱动类名:oracle.jdbc.driver.OracleDriver
*
* 3)JDBC的URL:jdbc:oracle:thin:@IP地址:端口号:数据库名
*
* 4)ojdbc6和ojdbc14的区别:ojdbc14.jar(适合java-1.4和1.5),ojdbc6(适合java-1.6)
*
* 注:端口号缺省为:1521
*/
if
(
StringCompareUtil
.
compare
(
s
,
"mysql"
)>-
1
){
report
.
setSqlType
(
"mysql"
);
}
else
if
(
StringCompareUtil
.
compare
(
s
,
"sqlserver"
)>-
1
){
report
.
setSqlType
(
"SQLServer"
);
}
else
if
(
StringCompareUtil
.
compare
(
s
,
"oracle"
)>-
1
){
report
.
setSqlType
(
"oracle"
);
}
else
if
(
StringCompareUtil
.
compare
(
s
,
"postgre"
)>-
1
){
report
.
setSqlType
(
"postgre"
);
}
}
}
}
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
if
(
havePom
){
report
.
setDependenceManagement
(
Report
.
DependenceManagement
.
MAVEN
);
report
.
setDepMagFilepath
(
pomPath
);
}
return
null
;
}
private
static
class
Counter
{
private
int
i
=
0
;
public
void
plus
(){
i
++;
}
public
int
getI
()
{
return
i
;
}
public
void
reset
(){
i
=
0
;
}
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/ProjectServiceImpl.java
浏览文件 @
2b1720c9
...
...
@@ -7,7 +7,9 @@ import com.zjty.adaptationmaster.adaptor.entity.Rule;
import
com.zjty.adaptationmaster.adaptor.entity.RuleSet
;
import
com.zjty.adaptationmaster.adaptor.repository.ProjectDao
;
import
com.zjty.adaptationmaster.adaptor.service.ProjectService
;
import
com.zjty.adaptationmaster.base.enums.Const
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
import
com.zjty.adaptationmaster.utils.ApusicDeployer
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -79,4 +81,9 @@ public class ProjectServiceImpl implements ProjectService {
}
return
ServerResponse
.
success
(
new
ListResponse
<>(
projectDao
.
count
(
spec
),
projects
));
}
@Override
public
ServerResponse
deployList
()
{
return
ServerResponse
.
success
(
new
ApusicDeployer
(
Const
.
CTLPATH
,
Const
.
MAVENHOME
).
list
());
}
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/InspectService.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
adaptor
.
service
;
import
com.zjty.adaptationmaster.base.response.ServerResponse
;
public
interface
InspectService
{
ServerResponse
inspect
(
int
projectId
);
}
src/main/java/com/zjty/adaptationmaster/adaptor/service/ProjectService.java
浏览文件 @
2b1720c9
...
...
@@ -16,4 +16,6 @@ public interface ProjectService {
ServerResponse
deleteProject
(
Integer
id
);
//删除项目
ServerResponse
findProject
(
Integer
page
,
Project
project
);
//查询项目
ServerResponse
deployList
();
}
src/main/java/com/zjty/adaptationmaster/base/configuration/ValueConfig.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
base
.
configuration
;
public
class
ValueConfig
{
}
src/main/java/com/zjty/adaptationmaster/base/configuration/WebSocketConfig.java
浏览文件 @
2b1720c9
...
...
@@ -2,24 +2,12 @@ package com.zjty.adaptationmaster.base.configuration;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.messaging.simp.config.MessageBrokerRegistry
;
import
org.springframework.web.socket.config.annotation.AbstractWebSocketMessageBrokerConfigurer
;
import
org.springframework.web.socket.config.annotation.StompEndpointRegistry
;
import
org.springframework.web.socket.server.standard.ServerEndpointExporter
;
/**
* 开启websocket支持
*/
@Configuration
public
class
WebSocketConfig
extends
AbstractWebSocketMessageBrokerConfigurer
{
@Override
public
void
configureMessageBroker
(
MessageBrokerRegistry
registry
)
{
registry
.
enableSimpleBroker
(
"/topic"
,
"/user"
);
}
@Override
public
void
registerStompEndpoints
(
StompEndpointRegistry
registry
)
{
registry
.
addEndpoint
(
"/webServer"
).
withSockJS
();
//registry.addEndpoint("/queueServer").withSockJS();
public
class
WebSocketConfig
{
@Bean
public
ServerEndpointExporter
serverEndpointExporter
()
{
return
new
ServerEndpointExporter
();
}
}
src/main/java/com/zjty/adaptationmaster/base/entity/DeployStatus.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
base
.
entity
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
DeployStatus
{
private
boolean
compile
;
private
boolean
deploy
;
private
boolean
running
;
}
src/main/java/com/zjty/adaptationmaster/base/entity/ProjectStatueFromMiddleware.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
base
.
entity
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
ProjectStatueFromMiddleware
{
private
String
name
;
private
String
description
;
private
String
state
;
}
src/main/java/com/zjty/adaptationmaster/base/enums/Const.java
浏览文件 @
2b1720c9
...
...
@@ -33,4 +33,8 @@ public class Const {
String
SERVER_RESPONSE_DATA_EXAMPLE
=
"[{'name' : '设备1号', 'id' : 'K001002'},{'name' : '设备2号', 'id' : 'K003004'}]"
;
}
public
static
final
String
MAVENHOME
=
"D:\\apache-maven-3.5.4"
;
public
static
final
String
CTLPATH
=
"/home/user/Desktop/AAS-V9.0/bin/appctl"
;
public
static
final
String
CTLPWD
=
"Qwert123!@#"
;
}
src/main/java/com/zjty/adaptationmaster/utils/ApusicDeployer.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
com.zjty.adaptationmaster.adaptor.controller.WebSocketServer
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.base.entity.ProjectStatueFromMiddleware
;
import
lombok.AllArgsConstructor
;
import
lombok.NoArgsConstructor
;
import
java.io.BufferedReader
;
import
java.io.IOException
;
import
java.io.InputStreamReader
;
import
java.util.ArrayList
;
import
java.util.List
;
@AllArgsConstructor
@NoArgsConstructor
public
class
ApusicDeployer
{
private
String
ctlPath
;
private
String
ctlPwd
;
public
void
deploy
(
Project
project
,
String
webSocketName
){
String
command
=
ctlPath
+
" -p '"
+
ctlPwd
+
"' install "
+
project
.
getProjectName
()+
" "
+
project
.
getReport
().
getPackagePath
();
try
{
Process
exec
=
Runtime
.
getRuntime
().
exec
(
command
);
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
()));
String
line
=
null
;
while
((
line
=
reader
.
readLine
())
!=
null
)
{
WebSocketServer
.
sendInfo
(
line
,
webSocketName
,
"部署"
,
"running"
,
project
.
getProjectName
());
}
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
public
List
<
ProjectStatueFromMiddleware
>
list
(){
List
<
ProjectStatueFromMiddleware
>
result
=
new
ArrayList
<>();
String
command
=
ctlPath
+
" -p '"
+
ctlPwd
+
"' list"
;
try
{
Process
exec
=
Runtime
.
getRuntime
().
exec
(
command
);
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
()));
boolean
titleEnd
=
false
;
String
line
=
null
;
while
((
line
=
reader
.
readLine
())
!=
null
)
{
if
(
line
.
startsWith
(
"---------------"
))
titleEnd
=
true
;
if
(
titleEnd
){
String
[]
split
=
line
.
split
(
"\\s{2,}"
);
ProjectStatueFromMiddleware
projectStatue
=
new
ProjectStatueFromMiddleware
(
split
[
0
],
split
[
1
],
split
[
2
]);
result
.
add
(
projectStatue
);
}
}
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
result
;
}
}
src/main/java/com/zjty/adaptationmaster/utils/Connector.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
ch.ethz.ssh2.Connection
;
public
class
Connector
{
private
String
ip
;
private
String
userName
;
private
String
pwd
;
public
void
connect
(){
Connection
connection
=
new
Connection
(
ip
);
// connection.connect();
// connection.authenticateWithPassword(userName,pwd);
}
}
src/main/java/com/zjty/adaptationmaster/utils/Inspector.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.adaptor.entity.Report
;
import
java.io.IOException
;
import
java.nio.file.*
;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 项目体检,根据既定特征值,
* 扫描、统计、分析项目特征,
* 生成报告
*
*/
public
class
Inspector
{
public
static
void
main
(
String
[]
args
)
{
Project
project
=
new
Project
();
project
.
setCodeUrl
(
""
);
Map
<
String
,
Report
.
Language
>
suffixLanguageMapping
=
new
HashMap
<>();
Map
<
String
,
Report
.
Separate
>
suffixSeparateMapping
=
new
HashMap
<>();
List
<
String
>
configFileSuffixList
=
new
ArrayList
<>();
Inspector
inspector
=
new
Inspector
(
project
,
suffixLanguageMapping
,
suffixSeparateMapping
,
configFileSuffixList
);
}
private
Project
project
;
private
Report
report
;
private
Map
<
String
,
Counter
>
languageMatchMap
;
private
Map
<
String
,
Counter
>
separateMatchMap
;
private
Map
<
String
,
Report
.
Language
>
suffixLanguageMapping
;
private
Map
<
String
,
Report
.
Separate
>
suffixSeparateMapping
;
private
Map
<
String
,
List
<
Path
>>
configFileTypePathsMapping
;
public
Inspector
(
Project
project
,
Map
<
String
,
Report
.
Language
>
suffixLanguageMapping
,
Map
<
String
,
Report
.
Separate
>
suffixSeparateMapping
,
List
<
String
>
configFileSuffixList
){
this
.
project
=
project
;
this
.
suffixLanguageMapping
=
suffixLanguageMapping
;
this
.
suffixSeparateMapping
=
suffixSeparateMapping
;
this
.
languageMatchMap
=
new
HashMap
<>();
for
(
String
s:
suffixLanguageMapping
.
keySet
()){
languageMatchMap
.
put
(
s
,
new
Counter
());
}
this
.
separateMatchMap
=
new
HashMap
<>();
for
(
String
s:
suffixSeparateMapping
.
keySet
()){
separateMatchMap
.
put
(
s
,
new
Counter
());
}
this
.
configFileTypePathsMapping
=
new
HashMap
<>();
for
(
String
s:
configFileSuffixList
){
configFileTypePathsMapping
.
put
(
s
,
new
ArrayList
<>());
}
this
.
report
=
new
Report
();
}
private
List
<
Path
>
propertiesConfigPaths
=
new
ArrayList
<>();
private
List
<
Path
>
ymlConfigPaths
=
new
ArrayList
<>();
private
List
<
Path
>
xmlConfigPaths
=
new
ArrayList
<>();
/**
* FileVisitResult.CONTINUE 继续遍历
* FileVisitResult.TERMINATE 中止访问
* FileVisitResult.SKIP_SIBLINGS 不访问同级的文件或目录
* FileVisitResult.SKIP_SUBTREE 不访问子目录
*/
public
Report
inspect
(){
try
{
FileSystem
aDefault
=
FileSystems
.
getDefault
();
Map
<
String
,
PathMatcher
>
languageSuffixMatcherMapping
=
new
HashMap
<>();
for
(
String
s:
suffixLanguageMapping
.
keySet
()){
languageSuffixMatcherMapping
.
put
(
s
,
aDefault
.
getPathMatcher
(
"glob:**/*."
+
s
));
}
Map
<
String
,
PathMatcher
>
separateSuffixMatcherMapping
=
new
HashMap
<>();
for
(
String
s:
suffixLanguageMapping
.
keySet
()){
separateSuffixMatcherMapping
.
put
(
s
,
aDefault
.
getPathMatcher
(
"glob:**/*."
+
s
));
}
Map
<
PathMatcher
,
String
>
configFileMatcherSuffixMapping
=
new
HashMap
<>();
for
(
String
s:
configFileTypePathsMapping
.
keySet
()){
configFileMatcherSuffixMapping
.
put
(
aDefault
.
getPathMatcher
(
"glob:**/*."
+
s
),
s
);
}
Files
.
walkFileTree
(
Paths
.
get
(
project
.
getCodeUrl
()),
new
FileVisitor
<
Path
>()
{
/**
* 统计某个后缀出现的次数
* @param dir
* @param attrs
* @return
* @throws IOException
*/
@Override
public
FileVisitResult
preVisitDirectory
(
Path
dir
,
BasicFileAttributes
attrs
)
throws
IOException
{
for
(
Map
.
Entry
<
String
,
PathMatcher
>
entry:
languageSuffixMatcherMapping
.
entrySet
()){
if
(
entry
.
getValue
().
matches
(
dir
)){
languageMatchMap
.
get
(
entry
.
getKey
()).
plus
();
}
}
for
(
Map
.
Entry
<
String
,
PathMatcher
>
entry:
separateSuffixMatcherMapping
.
entrySet
()){
if
(
entry
.
getValue
().
matches
(
dir
)){
separateMatchMap
.
get
(
entry
.
getKey
()).
plus
();
}
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFile
(
Path
file
,
BasicFileAttributes
attrs
)
throws
IOException
{
for
(
Map
.
Entry
<
PathMatcher
,
String
>
entry:
configFileMatcherSuffixMapping
.
entrySet
()){
if
(
entry
.
getKey
().
matches
(
file
)){
configFileTypePathsMapping
.
get
(
entry
.
getValue
()).
add
(
file
);
}
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFileFailed
(
Path
file
,
IOException
exc
)
throws
IOException
{
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
postVisitDirectory
(
Path
dir
,
IOException
exc
)
throws
IOException
{
return
FileVisitResult
.
CONTINUE
;
}
});
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
analysis
();
}
public
Report
analysis
(){
for
(
Map
.
Entry
<
String
,
Counter
>
entry:
languageMatchMap
.
entrySet
()){
if
(
entry
.
getValue
().
getNumber
()>
0
){
report
.
setLanguage
(
suffixLanguageMapping
.
get
(
entry
.
getKey
()));
}
}
for
(
Map
.
Entry
<
String
,
Counter
>
entry:
separateMatchMap
.
entrySet
()){
if
(
entry
.
getValue
().
getNumber
()>
0
){
report
.
setIsSeparate
(
suffixSeparateMapping
.
get
(
entry
.
getKey
()));
}
}
for
(
Map
.
Entry
<
String
,
List
<
Path
>>
entry:
configFileTypePathsMapping
.
entrySet
()){
}
// for(Path path:propertiesConfigPaths){
// try {
// for(String s:Files.readAllLines(path)){
// int index = StringCompareUtil.compare(s, "spring.datasource.driver-class-name");
// if(index > -1){
// if(!s.startsWith("#")){
// /**
// * MySQL数据库:
// * 1)驱动包:https://mvnrepository.com/artifact/mysql/mysql-connector-java(下载路径)
// * 2)驱动类名:com.mysql.jdbc.Driver
// * 3)JDBC的URL:jdbc:mysql://IP地址:端口号/数据库名字
// * 注:端口号缺省为:3306
// *
// * SQL server数据库:
// * 1)驱动包:https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc4(下载路径)
// * 2)驱动类名:com.microsoft.jdbc.sqlserver.SQLServerDriver
// * 3)JDBC的URL:jdbc:microsoft:sqlserver://IP地址:端口号;DatabaseName=数据库名
// * 4)sqljdbc和sqljdbc4区别:https://blog.csdn.net/cainiao_M/article/details/53404222
// * 注:端口号缺省为:1433
// *
// * Oracle数据库:
// * 1)驱动包:https://mvnrepository.com/artifact/com.oracle/ojdbc6(下载路径)
// * 2)驱动类名:oracle.jdbc.driver.OracleDriver
// * 3)JDBC的URL:jdbc:oracle:thin:@IP地址:端口号:数据库名
// * 4)ojdbc6和ojdbc14的区别:ojdbc14.jar(适合java-1.4和1.5),ojdbc6(适合java-1.6)
// * 注:端口号缺省为:1521
// */
// if(StringCompareUtil.compare(s, "mysql")>-1){
// report.setDatabaseType(Report.DatabaseType.MYSQL);
// }else if(StringCompareUtil.compare(s, "sqlserver")>-1){
// report.setDatabaseType(Report.DatabaseType.SQLSERVER);
// }else if(StringCompareUtil.compare(s, "oracle")>-1){
// report.setDatabaseType(Report.DatabaseType.ORACLE);
// }else if(StringCompareUtil.compare(s, "postgre")>-1){
// report.setDatabaseType(Report.DatabaseType.POSTGRE);
// }
// }
// }
// }
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
return
null
;
}
public
class
Counter
{
private
int
i
=
0
;
public
void
plus
(){
i
++;
}
public
int
getNumber
()
{
return
i
;
}
public
void
reset
(){
i
=
0
;
}
}
}
src/main/java/com/zjty/adaptationmaster/utils/MavenCompiler.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
com.zjty.adaptationmaster.adaptor.controller.WebSocketServer
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.base.enums.Const
;
import
org.apache.maven.shared.invoker.*
;
import
org.apache.maven.shared.utils.cli.CommandLineException
;
import
java.io.File
;
import
java.io.IOException
;
import
java.util.Collections
;
public
class
MavenCompiler
{
private
Project
project
;
private
String
mavenHome
;
private
String
webSocketId
;
public
MavenCompiler
(
Project
project
,
String
mavenHome
,
String
webSocketId
){
this
.
project
=
project
;
this
.
mavenHome
=
mavenHome
;
this
.
webSocketId
=
webSocketId
;
}
public
void
compiler
(){
InvocationRequest
request
=
new
DefaultInvocationRequest
();
request
.
setPomFile
(
new
File
(
project
.
getReport
().
getCompileFilePath
()));
request
.
setGoals
(
Collections
.
singletonList
(
"compile"
));
Invoker
invoker
=
new
DefaultInvoker
();
invoker
.
setMavenHome
(
new
File
(
mavenHome
));
invoker
.
setOutputHandler
(
new
InvocationOutputHandler
()
{
@Override
public
void
consumeLine
(
String
s
)
throws
IOException
{
WebSocketServer
.
sendInfo
(
webSocketId
,
s
,
"编译"
,
"running"
,
project
.
getProjectName
());
//System.out.println(s);
}
});
try
{
InvocationResult
execute
=
invoker
.
execute
(
request
);
CommandLineException
executionException
=
execute
.
getExecutionException
();
if
(
executionException
==
null
){
if
(
execute
.
getExitCode
()==
0
){
project
.
setCompileSuccess
(
true
);
}
}
else
{
WebSocketServer
.
sendInfo
(
webSocketId
,
"项目编译出错"
,
"编译"
,
"error"
,
project
.
getProjectName
());
WebSocketServer
.
sendInfo
(
webSocketId
,
executionException
.
getMessage
(),
"编译"
,
"error"
,
project
.
getProjectName
());
}
}
catch
(
MavenInvocationException
e
)
{
e
.
printStackTrace
();
}
}
// public static void main(String[] args) {
// Project project = new Project();
// project.getReport().setCompileFilePath("C:\\home\\project\\rsc\\hrmbclient\\pom.xml");
// MavenCompiler mavenCompiler = new MavenCompiler(project, Const.MAVENHOME,"aa");
// mavenCompiler.compiler();
// }
public
static
void
main
(
String
[]
args
)
{
InvocationRequest
request
=
new
DefaultInvocationRequest
();
request
.
setPomFile
(
new
File
(
"D:\\SingleHRManger1.0(scannerAndFriger)"
));
request
.
setGoals
(
Collections
.
singletonList
(
"compile"
));
Invoker
invoker
=
new
DefaultInvoker
();
//invoker.setMavenHome(new File(mavenHome));
invoker
.
setOutputHandler
(
new
InvocationOutputHandler
()
{
@Override
public
void
consumeLine
(
String
s
)
throws
IOException
{
System
.
out
.
println
(
s
);
//WebSocketServer.sendInfo(webSocketId,s,"编译","running",project.getProjectName());
//System.out.println(s);
}
});
}
}
src/main/java/com/zjty/adaptationmaster/utils/MyXmlReader.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
org.dom4j.Document
;
import
org.dom4j.DocumentException
;
import
org.dom4j.io.SAXReader
;
import
java.io.IOException
;
import
java.nio.file.Files
;
import
java.nio.file.Path
;
public
class
MyXmlReader
{
private
Document
document
;
public
MyXmlReader
(
Path
path
){
try
{
document
=
new
SAXReader
().
read
(
Files
.
newInputStream
(
path
));
}
catch
(
DocumentException
e
)
{
e
.
printStackTrace
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
public
Document
getDocument
()
{
return
document
;
}
}
src/main/java/com/zjty/adaptationmaster/utils/PropertiesReader.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
java.io.FileInputStream
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.nio.file.Files
;
import
java.nio.file.Path
;
import
java.util.Properties
;
public
class
PropertiesReader
{
public
static
Properties
readProperties
(
Path
path
){
InputStream
inputStream
=
null
;
Properties
properties
=
new
Properties
();
try
{
inputStream
=
Files
.
newInputStream
(
path
);
properties
.
load
(
inputStream
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
properties
;
}
}
src/main/java/com/zjty/adaptationmaster/utils/ReadedFileTask.java
浏览文件 @
2b1720c9
...
...
@@ -13,10 +13,8 @@ import java.nio.file.Path;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.util.List
;
public
class
ReadedFileTask
implements
Runnable
{
@Autowired
private
SimpMessagingTemplate
template
;
public
class
ReadedFileTask
implements
Runnable
{
private
List
<
ReadedFile
>
readedFiles
;
//private Writer responseWriter;
...
...
@@ -36,6 +34,7 @@ public class ReadedFileTask implements Runnable {
this
.
index
=
index
;
}
@Override
public
void
run
()
{
for
(
ReadedFile
readedFile:
readedFiles
){
...
...
@@ -62,7 +61,7 @@ public class ReadedFileTask implements Runnable {
}
//container.add(readedFile.getPath().getFileName()+"文本替换:"+entity.getTextMatching()+"|"+entity.getReplacing());
template
.
convertAndSend
(
"===="
+
readedFile
.
getPath
().
getFileName
()+
"////"
+
entity
.
getTextMatching
()+
"||||"
+
entity
.
getReplacing
(),
"1L"
);
//
template.convertAndSend("===="+readedFile.getPath().getFileName()+"////"+entity.getTextMatching()+"||||"+entity.getReplacing(),"1L");
//responseWriter.write("===="+readedFile.getPath().getFileName()+"////"+entity.getTextMatching()+"||||"+entity.getReplacing());
}
...
...
src/main/java/com/zjty/adaptationmaster/utils/StringCompareUtil.java
浏览文件 @
2b1720c9
...
...
@@ -48,8 +48,8 @@ public class StringCompareUtil {
*/
private
static
int
getNext
(
String
pattern
,
String
str
,
int
[]
N
)
{
int
n
=
pattern
.
length
();
char
v1
[]
=
str
.
toCharArray
();
char
v2
[]
=
pattern
.
toCharArray
();
char
[]
v1
=
str
.
toCharArray
();
char
[]
v2
=
pattern
.
toCharArray
();
int
x
=
0
;
while
(
n
--
!=
0
)
{
if
(
v1
[
x
]
!=
v2
[
x
]){
...
...
src/main/java/com/zjty/adaptationmaster/utils/YamlReader.java
0 → 100644
浏览文件 @
2b1720c9
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
com.alibaba.fastjson.JSON
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.beans.factory.config.YamlMapFactoryBean
;
import
org.springframework.core.io.ClassPathResource
;
import
org.yaml.snakeyaml.Yaml
;
import
java.io.FileInputStream
;
import
java.io.FileNotFoundException
;
import
java.util.Map
;
public
class
YamlReader
{
private
String
path
;
private
Map
<
String
,
Map
>
map
;
public
YamlReader
(
String
path
){
this
.
path
=
path
;
Yaml
yaml
=
new
Yaml
();
try
{
map
=
yaml
.
loadAs
(
new
FileInputStream
(
path
),
Map
.
class
);
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
}
}
public
String
getSpringDatasourceUrl
(){
return
(
String
)
((
Map
)((
map
.
get
(
"spring"
)).
get
(
"datasource"
))).
get
(
"url"
);
}
public
static
void
main
(
String
[]
args
)
{
String
s
=
"# mybatis\n"
+
"mybatis:\n"
+
" type-aliases-package: info.ideatower.component.inscriber.entity\n"
+
" mapper-locations: classpath:mapping/*.xml\n"
+
" config-locations: classpath:mybatis-config.xml\n"
+
"\n"
+
"# 应用组件通信等配置\n"
+
"component:\n"
+
" misso:\n"
+
" log:\n"
+
" addr: http://localhost:8009\n"
+
" error:\n"
+
" enable: on\n"
+
"\n"
+
"Related:\n"
+
" Projects:\n"
+
" - Rx\n"
+
" - Kwalify\n"
+
" - yaml_vim\n"
+
" - yatools.net\n"
+
" - JSON\n"
+
" - Pygments"
;
String
s1
=
"logging:\n"
+
" level:\n"
+
" root: debug\n"
+
" com.cax: debug\n"
+
" file: logs/debug.log\n"
+
"spring:\n"
+
" datasource:\n"
+
" driver-class-name: com.mysql.cj.jdbc.Driver\n"
+
" url: jdbc:mysql://localhost:3306/book?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC\n"
+
" username: root\n"
+
" password:\n"
+
" jpa:\n"
+
" hibernate:\n"
+
" ddl-auto: create\n"
+
" show-sql: true\n"
+
" open-in-view: false\n"
;
Yaml
yaml
=
new
Yaml
();
Map
<
String
,
Map
>
map
=
yaml
.
loadAs
(
s1
,
Map
.
class
);
System
.
out
.
println
(((
Map
)(
map
.
get
(
"spring"
)).
get
(
"datasource"
)).
get
(
"url"
));
//System.out.println(ymmm.getSpring().getDataSource().getDriverClassName());
// System.out.println(map);
// for (Map.Entry<String,Map> entry:map.entrySet()){
// System.out.println(entry);
//
// System.out.println(entry.getValue());
//// System.out.println(entry.getKey()+"\t"+entry.getValue());
// }
//只能解析map和properties
// YamlMapFactoryBean yamlMapFactoryBean = new YamlMapFactoryBean();
// yamlMapFactoryBean.setResources(new ClassPathResource("test.yml"));
// Map<String, Object> object = yamlMapFactoryBean.getObject();
// ymmm ymmm = ((ymmm)object);
// System.out.println(ymmm.getSpring().getDataSource().getDriverClassName());
//ymmm ymmm = JSON.parseObject(s1, ymmm.class);
//System.out.println(ymmm.getSpring().getDataSource().getDriverClassName());
}
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
DataSource
{
private
String
driverClassName
;
private
String
url
;
private
String
username
;
private
String
password
;
}
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
spring
{
private
DataSource
dataSource
;
}
@Data
public
class
ymmm
{
private
spring
spring
;
public
ymmm
(){
}
public
ymmm
(
spring
spring
){
this
.
spring
=
spring
;
}
}
}
src/main/resources/test.yml
0 → 100644
浏览文件 @
2b1720c9
logging
:
level
:
root
:
debug
com.cax
:
debug
file
:
logs/debug.log
spring
:
datasource
:
driver-class-name
:
com.mysql.cj.jdbc.Driver
url
:
jdbc:mysql://localhost:3306/book?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username
:
root
password
:
jpa
:
hibernate
:
ddl-auto
:
create
show-sql
:
true
open-in-view
:
false
\ No newline at end of file
src/test/java/com/zjty/adaptationmaster/Test1.java
浏览文件 @
2b1720c9
...
...
@@ -3,13 +3,19 @@ package com.zjty.adaptationmaster;
import
org.junit.Test
;
import
java.io.File
;
import
java.nio.file.FileSystems
;
import
java.nio.file.PathMatcher
;
import
java.nio.file.Paths
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
Test1
{
@Test
public
void
test
(){
System
.
out
.
println
((
char
)
1
);
System
.
out
.
println
((
int
)
'A'
);
System
.
out
.
println
((
int
)
'a'
);
PathMatcher
pathMatcher
=
FileSystems
.
getDefault
().
getPathMatcher
(
"glob:**/pom.xml"
);
System
.
out
.
println
(
pathMatcher
.
matches
(
Paths
.
get
(
"/static/aaa/pom.xml"
)));
}
...
...
@@ -22,5 +28,661 @@ public class Test1 {
System
.
out
.
println
(
s
);
}
System
.
out
.
println
(
split
[
0
]+
"||"
+
split
[
1
]+
"||"
+
split
[
2
]);
String
s
=
"default Default Application Running "
;
String
[]
split1
=
s
.
split
(
"\\s{2,}"
);
System
.
out
.
println
(
split1
);
for
(
String
s1
:
split1
)
{
System
.
out
.
println
(
s1
);
}
String
fileName
=
"application-dev.properties"
;
System
.
out
.
println
(
fileName
.
matches
(
"application.*\\.properties"
));
}
@Test
public
void
test111
(){
String
s
=
"./lib/spring-context-4.0.0.M2.jar\n"
+
"./lib/AESCodec111.jar\n"
+
"./lib/jersey-atom-1.4.jar\n"
+
"./lib/resolver.jar\n"
+
"./lib/asm-commons-3.3.jar\n"
+
"./lib/hibernate-entitymanager-4.1.4.Final.jar\n"
+
"./lib/poi-ooxml-3.16.jar\n"
+
"./lib/spring-build-src-4.0.0.M2.jar\n"
+
"./lib/derbyLocale_ja_JP.jar\n"
+
"./lib/jaxws-rt.jar\n"
+
"./lib/stax-api-1.0-2.jar\n"
+
"./lib/org.springframework.context.support-3.1.1.RELEASE.jar\n"
+
"./lib/derbyLocale_es.jar\n"
+
"./lib/org.apache.servicemix.bundles.quartz-1.5.2_1.jar\n"
+
"./lib/bcprov-jdk15on-1.55.jar\n"
+
"./lib/jaxb-xjc.jar\n"
+
"./lib/log4j-1.2.17.jar\n"
+
"./lib/derbyLocale_ko_KR.jar\n"
+
"./lib/commons-codec-1.9.jar\n"
+
"./lib/org.springframework.instrument.tomcat-3.1.1.RELEASE.jar\n"
+
"./lib/commons-logging-1.1.1.jar\n"
+
"./lib/jersey-multipart-1.4.jar\n"
+
"./lib/spring-beans-4.0.0.M2.jar\n"
+
"./lib/QRCode.jar\n"
+
"./lib/FastInfoset-1.2.2.jar\n"
+
"./lib/javassist-3.15.0-GA.jar\n"
+
"./lib/rome-0.9.jar\n"
+
"./lib/woodstox-core-asl.jar\n"
+
"./lib/httpclient-win-4.5.2.jar\n"
+
"./lib/javassist-3.11.0.GA.jar\n"
+
"./lib/commons-logging-1.1.3.jar\n"
+
"./lib/thumbnailator-0.4.7.jar\n"
+
"./lib/xwork-core-2.3.15.1.jar\n"
+
"./lib/spring-messaging-4.0.0.M2.jar\n"
+
"./lib/jersey-fastinfoset-1.4.jar\n"
+
"./lib/spring-webmvc-portlet-4.0.0.M2.jar\n"
+
"./lib/commons-io-2.0.1.jar\n"
+
"./lib/json-lib-2.3-jdk15.jar\n"
+
"./lib/hibernate-core-4.1.4.Final.jar\n"
+
"./lib/fluent-hc-4.5.2.jar\n"
+
"./lib/gmbal-api-only.jar\n"
+
"./lib/spring-test-4.0.0.M2.jar\n"
+
"./lib/org.springframework.core-3.1.1.RELEASE.jar\n"
+
"./lib/commons-beanutils-1.8.0.jar\n"
+
"./lib/spring-instrument-4.0.0.M2.jar\n"
+
"./lib/commons-fileupload-1.3.jar\n"
+
"./lib/asm-3.1.jar\n"
+
"./lib/log4j-1.2.16.jar\n"
+
"./lib/org.springframework.jms-3.1.1.RELEASE.jar\n"
+
"./lib/derbyrun.jar\n"
+
"./lib/derby.jar\n"
+
"./lib/RXTXcomm.jar\n"
+
"./lib/derbyLocale_cs.jar\n"
+
"./lib/commons-httpclient-3.1.jar\n"
+
"./lib/httpclient-cache-4.5.2.jar\n"
+
"./lib/org.springframework.asm-3.1.1.RELEASE.jar\n"
+
"./lib/jaxws-tools.jar\n"
+
"./lib/gson-2.2.4.jar\n"
+
"./lib/derbyLocale_zh_CN.jar\n"
+
"./lib/bcpkix-jdk15on-1.56.jar\n"
+
"./lib/org.springframework.beans-3.1.1.RELEASE.jar\n"
+
"./lib/spring-orm-4.0.0.M2.jar\n"
+
"./lib/httpmime-4.5.2.jar\n"
+
"./lib/jersey-core-1.4.jar\n"
+
"./lib/aspectjtools-1.5.0.jar\n"
+
"./lib/commons-pool-1.5.3.jar\n"
+
"./lib/pinyin4j-2.5.0.jar\n"
+
"./lib/httpclient-4.5.2.jar\n"
+
"./lib/ha-api.jar\n"
+
"./lib/BussinessImage.jar\n"
+
"./lib/commons-collections4-4.1.jar\n"
+
"./lib/derbynet.jar\n"
+
"./lib/jaxb-impl-2.1.12.jar\n"
+
"./lib/spring-jdbc-4.0.0.M2.jar\n"
+
"./lib/jersey-json-1.4.jar\n"
+
"./lib/Searcher.jar\n"
+
"./lib/derbyLocale_hu.jar\n"
+
"./lib/jboss-transaction-api_1.1_spec-1.0.1.Final.jar\n"
+
"./lib/jaxb-impl.jar\n"
+
"./lib/stax-ex.jar\n"
+
"./lib/org.springframework.oxm-3.1.1.RELEASE.jar\n"
+
"./lib/org.springframework.aspects-3.1.1.RELEASE.jar\n"
+
"./lib/core-3.0.0.jar\n"
+
"./lib/jackson-databind-2.5.3.jar\n"
+
"./lib/jna-platform-4.1.0.jar\n"
+
"./lib/org.springframework.web.portlet-3.1.1.RELEASE.jar\n"
+
"./lib/activation-1.1.jar\n"
+
"./lib/spring-web-4.0.0.M2.jar\n"
+
"./lib/derbyLocale_pl.jar\n"
+
"./lib/derbyclient.jar\n"
+
"./lib/asm-tree-3.3.jar\n"
+
"./lib/spring-webmvc-4.0.0.M2.jar\n"
+
"./lib/FastInfoset.jar\n"
+
"./lib/jackson-core-2.5.3.jar\n"
+
"./lib/javase-2.1.jar\n"
+
"./lib/jersey-client-1.4.jar\n"
+
"./lib/mysql-connector-java-5.1.1.jar\n"
+
"./lib/commons-beanutils-1.7.0.jar\n"
+
"./lib/commons-lang-2.5.jar\n"
+
"./lib/jackson-all-1.7.6.jar\n"
+
"./lib/jpush-client-3.1.3.jar\n"
+
"./lib/asm-3.3.jar\n"
+
"./lib/javax.annotation-api.jar\n"
+
"./lib/org.springframework.web.struts-3.1.1.RELEASE.jar\n"
+
"./lib/hibernate-commons-annotations-4.0.1.Final.jar\n"
+
"./lib/ognl-3.0.6.jar\n"
+
"./lib/spring-tx-4.0.0.M2.jar\n"
+
"./lib/org.springframework.web.servlet-3.1.1.RELEASE.jar\n"
+
"./lib/derbyLocale_ru.jar\n"
+
"./lib/derbyLocale_de_DE.jar\n"
+
"./lib/org.springframework.instrument-3.1.1.RELEASE.jar\n"
+
"./lib/jaxb-api-2.1.jar\n"
+
"./lib/AESCodec.jar\n"
+
"./lib/management-api.jar\n"
+
"./lib/hibernate-commons-annotations-4.0.2.Final.jar\n"
+
"./lib/ant.jar\n"
+
"./lib/org.springframework.expression-3.1.1.RELEASE.jar\n"
+
"./lib/spring-instrument-tomcat-4.0.0.M2.jar\n"
+
"./lib/struts2-json-plugin-2.3.4.1.jar\n"
+
"./lib/jsr311-api-1.1.1.jar\n"
+
"./lib/dom4j-1.6.1.jar\n"
+
"./lib/jsonwebservice-ri-0.9.0.jar\n"
+
"./lib/jna-4.1.0.jar\n"
+
"./lib/struts2-core-2.3.15.1.jar\n"
+
"./lib/antlr-2.7.7.jar\n"
+
"./lib/bcprov-jdk15on-1.60.jar\n"
+
"./lib/struts2-spring-plugin-2.3.15.1.jar\n"
+
"./lib/jaxb-core.jar\n"
+
"./lib/bcmail-jdk15on-1.56.jar\n"
+
"./lib/spring-expression-4.0.0.M2.jar\n"
+
"./lib/poi-ooxml-schemas-3.16.jar\n"
+
"./lib/mail-1.4.jar\n"
+
"./lib/javabase64-1.3.1.jar\n"
+
"./lib/jackson-mapper-asl-1.5.5.jar\n"
+
"./lib/jackson-jaxrs-1.5.5.jar\n"
+
"./lib/javax.xml.soap-api.jar\n"
+
"./lib/stax2-api.jar\n"
+
"./lib/cglib-nodep-2.2.jar\n"
+
"./lib/org.springframework.context-3.1.1.RELEASE.jar\n"
+
"./lib/org.springframework.web-3.1.1.RELEASE.jar\n"
+
"./lib/core-3.1.0-sources.jar\n"
+
"./lib/httpcore-4.4.4.jar\n"
+
"./lib/policy.jar\n"
+
"./lib/jaxws-api.jar\n"
+
"./lib/commons-logging-1.2.jar\n"
+
"./lib/ezmorph-1.0.6.jar\n"
+
"./lib/fastjson-1.2.46.jar\n"
+
"./lib/spring-websocket-4.0.0.M2.jar\n"
+
"./lib/spring-context-support-4.0.0.M2.jar\n"
+
"./lib/derbyLocale_zh_TW.jar\n"
+
"./lib/derbyLocale_fr.jar\n"
+
"./lib/mimepull-1.3.jar\n"
+
"./lib/jaxb-jxc.jar\n"
+
"./lib/derbyLocale_pt_BR.jar\n"
+
"./lib/spring-jms-4.0.0.M2.jar\n"
+
"./lib/winszipaes_zh_CN_supported_20120416.jar\n"
+
"./lib/freemarker-2.3.19.jar\n"
+
"./lib/commons-fileupload-1.2.jar\n"
+
"./lib/jackson-core-asl-1.5.5.jar\n"
+
"./lib/slf4j-api-1.6.1.jar\n"
+
"./lib/org.springframework.aop-3.1.1.RELEASE.jar\n"
+
"./lib/jaxb-api.jar\n"
+
"./lib/jdom-1.0.jar\n"
+
"./lib/standard.jar\n"
+
"./lib/jackson-annotations-2.5.3.jar\n"
+
"./lib/jbarcode-0.2.8.jar\n"
+
"./lib/spring-oxm-4.0.0.M2.jar\n"
+
"./lib/hibernate-core-4.2.3.Final.jar\n"
+
"./lib/junit.jar\n"
+
"./lib/ojdbc14.jar\n"
+
"./lib/xmlbeans-2.6.0.jar\n"
+
"./lib/poi-3.16-beta2.jar\n"
+
"./lib/spring-aspects-4.0.0.M2.jar\n"
+
"./lib/hibernate-jpa-2.0-api-1.0.1.Final.jar\n"
+
"./lib/saaj-impl.jar\n"
+
"./lib/autocompleteTextFileld.jar\n"
+
"./lib/mimepull.jar\n"
+
"./lib/jersey-server-1.4.jar\n"
+
"./lib/slf4j-api-1.7.5.jar\n"
+
"./lib/derbytools.jar\n"
+
"./lib/commons-logging.jar\n"
+
"./lib/jxl.jar\n"
+
"./lib/jstl.jar\n"
+
"./lib/zxing-javase.jar\n"
+
"./lib/spring-aop-4.0.0.M2.jar\n"
+
"./lib/org.hamcrest.core_1.3.0.v201303031735.jar\n"
+
"./lib/derbyLocale_it.jar\n"
+
"./lib/aopalliance-1.0.jar\n"
+
"./lib/jsr181-api.jar\n"
+
"./lib/jettison-1.1.jar\n"
+
"./lib/property.jar\n"
+
"./lib/derbyoptionaltools.jar\n"
+
"./lib/spring-core-4.0.0.M2.jar\n"
+
"./lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar\n"
+
"./lib/jboss-logging-3.1.0.GA.jar\n"
+
"./lib/aspectjweaver-1.6.9.jar\n"
+
"./lib/commons-lang3-3.1.jar\n"
+
"./lib/streambuffer.jar"
;
String
ss
=
"./src/encryptionMine/ClassLoaderMineOlder.java\n"
+
"./src/encryptionMine/DeCipher.java\n"
+
"./src/encryptionMine/ClassLoaderMine.java\n"
+
"./src/com/taiyuan/hrmanager/updatepicture/test.java\n"
+
"./src/com/taiyuan/hrmanager/updatepicture/UpdatePictureMapNew.java\n"
+
"./src/com/taiyuan/hrmanager/updatepicture/PictureTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/updatepicture/PictureUpdateErCode.java\n"
+
"./src/com/taiyuan/hrmanager/updatepicture/UpdatePictureMap.java\n"
+
"./src/com/taiyuan/hrmanager/fp/Fingerprint.java\n"
+
"./src/com/taiyuan/hrmanager/fp/FPComNameInterface.java\n"
+
"./src/com/taiyuan/hrmanager/fp/FrameworkFPVerifyTask.java\n"
+
"./src/com/taiyuan/hrmanager/fp/FPCMD.java\n"
+
"./src/com/taiyuan/hrmanager/fp/Command.java\n"
+
"./src/com/taiyuan/hrmanager/fp/FrameworkFPComNameTask.java\n"
+
"./src/com/taiyuan/hrmanager/fp/ContinueRead.java\n"
+
"./src/com/taiyuan/hrmanager/fp/FrameworkFPEnrollTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/framework/TaskTabel.java\n"
+
"./src/com/taiyuan/hrmanager/simple/framework/HRMPathFactory.java\n"
+
"./src/com/taiyuan/hrmanager/simple/framework/HRMThreadPool.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/EntpriseInfomationRefreshTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/WaitingIconTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/LockTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/FrameworkSubmitTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/MainTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/CreateProcessTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/SimpleResultTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/HRMTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/UserlistTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/ResultTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/FrameworkRefreshTask.java\n"
+
"./src/com/taiyuan/hrmanager/simple/task/UpdatePasswordTask.java\n"
+
"./src/com/taiyuan/hrmanager/ui/factory/UIFactory.java\n"
+
"./src/com/taiyuan/hrmanager/ui/factory/MainConfig.java\n"
+
"./src/com/taiyuan/hrmanager/ui/factory/Nodes.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/PersonButton.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/Labelslmpl.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ModfiyNewPassword.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/BasicInfoVBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ClickButton.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/BasicsInfomationSuperLabels.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotatePageCanv.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ImagesButtons.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/SuperTabs.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/FristPageVB.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/userReason.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotatePageTipsVb.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ImagessuperLabels.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotateFisrtPageHBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotatePageShape.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RoutineLabel.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotateButtonvb.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/FristPageVbox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/SuperTextField.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/BasicsISuperLabel.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotateTooltip.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/Buttonlmpl.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ModifyOldPassWordText.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/TrainDateSelectBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ModfiyPassText.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/AborderNormallinks.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/Setbackground.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/FristPageCanvas.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/Jumplabels.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/SuperColumn.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/SuperPasswordText.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/ModifpwdLabel.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/BasicReporter.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/EnterpriseLabel.java\n"
+
"./src/com/taiyuan/hrmanager/ui/client/Controllers/RotateTooltiphb.java\n"
+
"./src/com/taiyuan/hrmanager/ui/menu/MenuInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/OrgInformationManagerTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/AdminTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/ConfigTigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/DataManagerTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/SecretorTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/Operator.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/TransferRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/CarrierRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/RecallRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/OutJobRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/TrainRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/AbstractTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/AlterRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/AbroadRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/CircleCheckRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/RigisterRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/ReportRoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/routine/RoutineTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RotatePrintTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RestartTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/AuditorTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/OperatorTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RotateUpdatePicture.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RotateRestartTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/HelpTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RatateHelperTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/ReturnBack.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/RotateDataManager.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/PostManagerTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/Trigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/PrintTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/VersionTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/trigger/ExitTrigger.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/AduitTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/HardwareTestOpera.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/SecretTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/AdminTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/AbstractTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/routine/person/info/BasicsInfomation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/routine/person/info/PersonInfoUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/routine/person/info/HistoryInfomation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/routine/person/info/PostlistUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/InsertInFirst.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/RoutineTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/ConfigTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/SearchPaneSub.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/ChgPwIntime.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/SearchTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/SearchPane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/lefttabs/HardwareTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/CreateAuthorTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/dataupdate/DataUp.java\n"
+
"./src/com/taiyuan/hrmanager/ui/dataupdate/DataUpdate.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/DataOutputManager.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/FirstPage.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/FristPageData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/RotateFristPage.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/UserTableData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/Auditor.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/RoutineUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/EncoderBARCode.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/PersonRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/TrainSetToolOld.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/ResignRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/RecallRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/DecodeBarCode.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/TransferRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/CarrierRepelRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/TrainRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/PictureUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/AbstractRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/FrameWorkTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/BulletBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/TaskTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/CircleCheckRountinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/InformationUpdateRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/ReportRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/RoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/AbroadRoutinePane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/TrainSetNew.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/routine/RoutineTableUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/PersonDataUity.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/SuperVBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/SetFirsPageDate.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/PostManagerUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/UserTable.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/AuditorView.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/PictureSrcChooser.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/Superparet.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/AdminTable.java\n"
+
"./src/com/taiyuan/hrmanager/ui/right/EnterpriseInfomation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/AdminTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/TestSecurityAffectUser.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/StageTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/ChartTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/EnterpriseInfoTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/HPFDemos.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/Timetest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/InOutManagerTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/PersonInfoText.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/QRCodeTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/TestAdmin.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/ZipTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/ZipTest1.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/UpDatePictureTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/HumanInfoTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/LInede.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/BottomTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/TestStage.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/Operatortest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/TestPostManager.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/SeurityTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/TestSystemInformation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/RoutineListTest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/RoutineUITest.java\n"
+
"./src/com/taiyuan/hrmanager/ui/test/FileUtil.java\n"
+
"./src/com/taiyuan/hrmanager/ui/OutLinkInTime.java\n"
+
"./src/com/taiyuan/hrmanager/ui/StartInEncry.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/RotateFristButton.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/TotelFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/AbstractLoginFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/MainFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/UpdatePasswordSure.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ExaHardBinding.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/RotateFristPageButtons.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/ProcessFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/Frame.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/Framework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/RightFrameworkInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/TabInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/PersonCell.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/BottomFramworkInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/CanCallbackFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/ResultableUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/PopResultFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/LoginFrameworkInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/AbstractFramewok.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/ShortCutPaneInterface.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/Assemable.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/interfaces/NumReason.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ProcessPopupFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/UpdatePasswordUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/AdminAlterframework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/HRSelectModel.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/RotateText.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ChangesVBox.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ExaHardWareCheck.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/SimpleShortCutPane.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ExampleLoginFramework.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/FlipView.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/ExaHardWareBinding.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/SimpleBottom.java\n"
+
"./src/com/taiyuan/hrmanager/ui/frameworks/SimpleRight.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/TopSystemMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/AbstractMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/TopDataStaticMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/SecurityMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/TopBasicsConfigureMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/TopHelpercenterMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/AdminMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/OperatorHarewrae.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/TransfertonewpostItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/RegisterItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/GoabroadItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/SystemModfiyPwdMenuItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/SystemItemoutlog.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/QuitItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/ModifyItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/RepayingItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/HelperConfidentialityMenuItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/HelperVersionIinformationMenuItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/PresentationItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/Items/TrainItem.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/AuditorMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/AdminMenuOperat.java\n"
+
"./src/com/taiyuan/hrmanager/ui/top/Menus/TopRoutineMenu.java\n"
+
"./src/com/taiyuan/hrmanager/ui/NavigatorTab.java\n"
+
"./src/com/taiyuan/hrmanager/ui/firstpage/AdminFirstPage.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/InsertAfterLogin.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/ShortAnnotation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/ConfigByAuthority.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/TriggerConfig.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/TabAnnotation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/MenuAnnotation.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/RotatesPage.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/MapConfig.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/FirstConfig.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/MutiConfig.java\n"
+
"./src/com/taiyuan/hrmanager/ui/annotation/Config.java\n"
+
"./src/com/taiyuan/hrmanager/ui/Framework/dustbin/LoginDataTask.java\n"
+
"./src/com/taiyuan/hrmanager/ui/ExampleUI.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/Invalid.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/UIDatafromGate.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/HumanTreeData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/AbroadData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/TrainData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/TransferData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/PictureData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/ResignData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/TrainMany.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/Picture.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/ReportData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/JasonUtil.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/EnterpriseInformationData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/CarrierRepelData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/RecallData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/InformationUpdateData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/Password.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/PostData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/PersonData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/CircleCheckData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/data/RoutineData.java\n"
+
"./src/com/taiyuan/hrmanager/ui/StartTwo.java\n"
+
"./src/com/taiyuan/hrmanager/encryption/ClassLoaderMine.java\n"
+
"./src/com/taiyuan/hrmanager/encryption/MyCipher.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidChoiceButton.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/SM2Util.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/FileCutting.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/SM2.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/ZipUtil.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/DoOut.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/ToECPoint.java\n"
+
"./src/com/taiyuan/hrmanager/util/gmutil/SM2KeyPair.java\n"
+
"./src/com/taiyuan/hrmanager/util/BindingTextField.java\n"
+
"./src/com/taiyuan/hrmanager/util/InputError.java\n"
+
"./src/com/taiyuan/hrmanager/util/Lissence.java\n"
+
"./src/com/taiyuan/hrmanager/util/HumanSelecter.java\n"
+
"./src/com/taiyuan/hrmanager/util/GMBaseUtil.java\n"
+
"./src/com/taiyuan/hrmanager/util/TrainSetTool1.java\n"
+
"./src/com/taiyuan/hrmanager/util/LoggerCreaterNew.java\n"
+
"./src/com/taiyuan/hrmanager/util/Clock.java\n"
+
"./src/com/taiyuan/hrmanager/util/SearchString.java\n"
+
"./src/com/taiyuan/hrmanager/util/CreateQRCode.java\n"
+
"./src/com/taiyuan/hrmanager/util/LoginvalidTextField.java\n"
+
"./src/com/taiyuan/hrmanager/util/CheckMacUtil.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidImagePathStringList.java\n"
+
"./src/com/taiyuan/hrmanager/util/TrainSetTool.java\n"
+
"./src/com/taiyuan/hrmanager/util/RememberInvalidTextField.java\n"
+
"./src/com/taiyuan/hrmanager/util/HRManagerReadXls.java\n"
+
"./src/com/taiyuan/hrmanager/util/GroupInvalidButton.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidSelectedNameList.java\n"
+
"./src/com/taiyuan/hrmanager/util/OfdScanner.java\n"
+
"./src/com/taiyuan/hrmanager/util/CopyFileUtil.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidTextField.java\n"
+
"./src/com/taiyuan/hrmanager/util/LoginPassText.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidImageTwo.java\n"
+
"./src/com/taiyuan/hrmanager/util/LabelS.java\n"
+
"./src/com/taiyuan/hrmanager/util/LogCreator.java\n"
+
"./src/com/taiyuan/hrmanager/util/BeanDao.java\n"
+
"./src/com/taiyuan/hrmanager/util/ExmapleXlsBean.java\n"
+
"./src/com/taiyuan/hrmanager/util/ExcelConfig.java\n"
+
"./src/com/taiyuan/hrmanager/util/Regex.java\n"
+
"./src/com/taiyuan/hrmanager/util/SM3Util.java\n"
+
"./src/com/taiyuan/hrmanager/util/InvalidTextArea.java\n"
+
"./src/com/taiyuan/hrmanager/util/FormatHTMLLayout.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Organization.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/History.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/OrganizationHistory.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/DataReturn.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Post.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Industry.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/transferToXml.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/IdControl.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Authorities.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Human.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Initializate.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/OutIn.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Routine.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Risk.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Record.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/SysConfig.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Usr.java\n"
+
"./src/com/taiyuan/hrmanager/data/entity/Statistics.java\n"
+
"./src/com/taiyuan/hrmanager/data/AccountThread.java\n"
+
"./src/com/taiyuan/hrmanager/data/DataProcessInterface.java\n"
+
"./src/com/taiyuan/hrmanager/data/DataThread.java\n"
+
"./src/com/taiyuan/hrmanager/data/TrustAllTrustManager.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Selfvaluation.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_OrganizationHistory.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Datagate.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/DatagateTest.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Dataitem.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Report.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Resign.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Recall.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_History.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_InformationUpdate.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Organization.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Rigister.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Routine.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_User.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Train.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Abroad.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_CarrierRepel.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/ReturnData.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Human.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Post.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/DatagateCreator.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_Transfer.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_CircleCheck.java\n"
+
"./src/com/taiyuan/hrmanager/data/gate/Gate_OutIn.java\n"
+
"./src/com/taiyuan/hrmanager/data/FadeDataProcess.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/RoutineDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/IdControlDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/BaseDaoImpl.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/HumanDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/UsrDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/SysConfigDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/RecordDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/OrganizationDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/FlagDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/StatisticsDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/RiskDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/OrganizationHistoryDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/AuthorityDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/HistoryDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/BaseDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/junit/DaoTest.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/junit/BaseDAOTestCaseJunit44.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/PostDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/IndustryDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/dao/OutInDao.java\n"
+
"./src/com/taiyuan/hrmanager/data/util/ReflectionUtils.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerTrigger.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerProgrem.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/RunScanner.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerRegister.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerDoScan.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/AbstractScaner.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/TEST.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerGetButton.java\n"
+
"./src/com/taiyuan/hrmanger/scaner/ScannerUnregister.java\n"
;
String
s1
=
s
.
replaceAll
(
"\n"
,
";"
);
String
ss1
=
ss
.
replaceAll
(
"\n"
,
";"
);
System
.
out
.
println
(
s1
);
System
.
out
.
println
(
"D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\activation-1.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\AESCodec.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\ant.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\antlr-2.7.7.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\aopalliance-1.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\asm-3.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\asm-3.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\asm-commons-3.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\asm-tree-3.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\aspectjtools-1.5.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\aspectjweaver-1.6.9.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\autocompleteTextFileld.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\bcprov-jdk16-140.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\BussinessImage.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\cglib-nodep-2.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-beanutils-1.7.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-beanutils-1.8.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-codec-1.9.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-collections4-4.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-fileupload-1.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-fileupload-1.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-httpclient-3.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-io-2.0.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-lang-2.5.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-lang3-3.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-logging-1.1.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-logging-1.1.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-logging-1.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-logging.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\commons-pool-1.5.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\core-3.0.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\core-3.1.0-sources.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derby.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyclient.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_cs.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_de_DE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_es.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_fr.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_hu.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_it.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_ja_JP.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_ko_KR.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_pl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_pt_BR.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_ru.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_zh_CN.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyLocale_zh_TW.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbynet.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyoptionaltools.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbyrun.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\derbytools.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\dom4j-1.6.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\ezmorph-1.0.6.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\FastInfoset-1.2.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\FastInfoset.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\fluent-hc-4.5.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\freemarker-2.3.19.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\gmbal-api-only.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\gson-2.2.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\ha-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-commons-annotations-4.0.1.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-commons-annotations-4.0.2.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-core-4.1.4.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-core-4.2.3.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-entitymanager-4.1.4.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\hibernate-jpa-2.0-api-1.0.1.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\httpclient-4.5.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\httpclient-cache-4.5.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\httpclient-win-4.5.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\httpcore-4.4.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\httpmime-4.5.2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-all-1.7.6.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-annotations-2.5.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-core-2.5.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-core-asl-1.5.5.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-databind-2.5.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-jaxrs-1.5.5.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jackson-mapper-asl-1.5.5.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\javase-2.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\javassist-3.11.0.GA.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\javassist-3.15.0-GA.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\javax.annotation-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\javax.xml.soap-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-api-2.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-core.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-impl-2.1.12.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-impl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-jxc.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxb-xjc.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxws-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxws-rt.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jaxws-tools.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jbarcode-0.2.8.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jboss-logging-3.1.0.GA.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jboss-transaction-api_1.1_spec-1.0.0.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jboss-transaction-api_1.1_spec-1.0.1.Final.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jdom-1.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-atom-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-client-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-core-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-fastinfoset-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-json-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-multipart-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jersey-server-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jettison-1.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jna-4.1.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jna-platform-4.1.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jpush-client-3.1.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\json-lib-2.3-jdk15.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jsonwebservice-ri-0.9.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jsr181-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jsr311-api-1.1.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jstl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\junit.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\jxl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\log4j-1.2.16.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\log4j-1.2.17.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\mail-1.4.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\management-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\mimepull-1.3.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\mimepull.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\mysql-connector-java-5.1.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\ognl-3.0.6.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\ojdbc14.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.apache.servicemix.bundles.quartz-1.5.2_1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.hamcrest.core_1.3.0.v201303031735.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.aop-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.asm-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.aspects-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.beans-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.context-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.context.support-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.core-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.expression-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.instrument-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.instrument.tomcat-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.jms-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.oxm-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.web-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.web.portlet-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.web.servlet-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\org.springframework.web.struts-3.1.1.RELEASE.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\pinyin4j-2.5.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\poi-3.16-beta2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\poi-ooxml-3.16.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\poi-ooxml-schemas-3.16.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\policy.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\property.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\QRCode.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\resolver.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\rome-0.9.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\RXTXcomm.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\saaj-impl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\Searcher.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\slf4j-api-1.6.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\slf4j-api-1.7.5.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-aop-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-aspects-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-beans-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-build-src-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-context-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-context-support-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-core-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-expression-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-instrument-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-instrument-tomcat-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-jdbc-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-jms-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-messaging-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-orm-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-oxm-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-test-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-tx-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-web-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-webmvc-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-webmvc-portlet-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\spring-websocket-4.0.0.M2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\standard.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\stax-api-1.0-2.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\stax-ex.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\stax2-api.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\streambuffer.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\struts2-core-2.3.15.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\struts2-json-plugin-2.3.4.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\struts2-spring-plugin-2.3.15.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\thumbnailator-0.4.7.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\winszipaes_zh_CN_supported_20120416.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\woodstox-core-asl.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\xmlbeans-2.6.0.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\xwork-core-2.3.15.1.jar;D:\\SingleHRManger1.0(scannerAndFriger)\\lib\\zxing-javase.jar"
);
System
.
out
.
print
(
" "
);
System
.
out
.
print
(
"D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\dao\\junit\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\dao\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\entity\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\gate\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\util\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\data\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\encryption\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\fp\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\simple\\framework\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\simple\\task\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\annotation\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\client\\Controllers\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\data\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\dataupdate\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\factory\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\firstpage\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\Framework\\dustbin\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\frameworks\\interfaces\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\frameworks\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\lefttabs\\routine\\person\\info\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\lefttabs\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\menu\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\right\\routine\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\right\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\test\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\top\\Menus\\Items\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\top\\Menus\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\trigger\\routine\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\trigger\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\ui\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\updatepicture\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\util\\gmutil\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanager\\util\\*.java D:\\SingleHRManger1.0(scannerAndFriger)\\src\\com\\taiyuan\\hrmanger\\scaner\\*.java"
);
}
public
List
<
String
>
dirPath
=
new
ArrayList
<>();
@Test
public
void
test2
(){
File
file
=
new
File
(
"D:\\src\\com\\taiyuan"
);
doDir
(
file
);
for
(
String
s:
dirPath
){
System
.
out
.
print
(
s
+
"\\*.java "
);
}
}
public
void
doDir
(
File
file
){
boolean
haveJave
=
false
;
for
(
File
file1:
file
.
listFiles
()){
if
(
file1
.
isFile
()&&
file1
.
getName
().
endsWith
(
".java"
)){
haveJave
=
true
;
}
if
(
file1
.
isDirectory
()){
doDir
(
file1
);
}
}
if
(
haveJave
){
dirPath
.
add
(
file
.
getAbsolutePath
());
}
}
@Test
public
void
test3
(){
StringBuilder
sb
=
new
StringBuilder
();
File
file
=
new
File
(
"D:\\lib"
);
for
(
File
file1:
file
.
listFiles
()){
sb
.
append
(
file1
.
getAbsolutePath
()+
";"
);
}
System
.
out
.
println
(
sb
.
toString
());
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论