1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
package com.msl;
import com.google.common.collect.Sets;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
import java.io.File;
import java.util.Set;
/**
* @author wanglq
* Date 2024/8/2
* Time 17:06
*/
public class Main {
public static Set<String> ignorePath = Sets.newHashSet();
public static Set<String> suffix = Sets.newHashSet();
static {
ignorePath.add(".git");
ignorePath.add(".idea");
suffix.add("java");
suffix.add("xml");
}
public static void main(String[] args) throws Exception {
// doReplace("D:\\develop\\clx_projects\\msl-supervise\\supervise-web");
// doReplace("D:\\develop\\clx_projects\\msl-common-starter\\log-spring-boot-starter");
// doReplace("D:\\IdeaProjects\\clx\\clx-open");
// doReplace("D:\\IdeaProjects\\clx\\clx-open\\clx-open-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-open\\clx-open-sdk");
// doReplace("D:\\IdeaProjects\\clx\\clx-open\\clx-open-web");
// doReplace("D:\\IdeaProjects\\clx\\clx-user");
// doReplace("D:\\IdeaProjects\\clx\\clx-user\\clx-user-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-user\\clx-user-web");
// doReplace("D:\\IdeaProjects\\clx\\lms-manage");
// doReplace("D:\\IdeaProjects\\clx\\lms-manage\\lms-manage-api");
// doReplace("D:\\IdeaProjects\\clx\\lms-manage\\lms-manage-sdk");
// doReplace("D:\\IdeaProjects\\clx\\common-open");
// doReplace("D:\\IdeaProjects\\clx\\common-open\\open-core");
// doReplace("D:\\IdeaProjects\\clx\\common-open\\open-sdk");
// doReplace("D:\\IdeaProjects\\clx\\common-open\\open-starter");
// doReplace("D:\\IdeaProjects\\clx\\clx-setting");
// doReplace("D:\\IdeaProjects\\clx\\clx-setting\\setting-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-setting\\web");
// doReplace("D:\\IdeaProjects\\clx\\clx-statistics");
// doReplace("D:\\IdeaProjects\\clx\\clx-statistics\\clx-statistics-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-statistics\\clx-statistics-web");
// doReplace("D:\\IdeaProjects\\clx\\clx-order");
// doReplace("D:\\IdeaProjects\\clx\\clx-order\\order-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-order\\order-web");
doReplace("D:\\IdeaProjects\\clx\\clx-contract");
doReplace("D:\\IdeaProjects\\clx\\clx-contract\\contract-api");
doReplace("D:\\IdeaProjects\\clx\\clx-contract\\web");
// doReplace("D:\\IdeaProjects\\clx\\clx-performance");
// doReplace("D:\\IdeaProjects\\clx\\clx-performance\\performance-api");
// doReplace("D:\\IdeaProjects\\clx\\clx-performance\\performance-web");
// doReplace("D:\\IdeaProjects\\clx\\purchase-manage");
// doReplace("D:\\IdeaProjects\\clx\\purchase-manage\\purchase-manage-api");
// doReplace("D:\\IdeaProjects\\clx\\purchase-manage\\purchase-manage-sdk");
// doReplace("D:\\IdeaProjects\\clx\\purchase-manage\\purchase-manage-web");
}
public static void doReplace(String path) throws Exception {
File file = new File(path);
if (!file.exists()) {
System.out.println("路径不存在,无法替换……");
}
doReplace(file);
}
public static void doReplace(File file) throws Exception {
if (file.isFile()) {
String extension = FilenameUtils.getExtension(file.getName());
if (!suffix.contains(extension)) {
return;
}
FileContext context = new FileContext(file);
System.out.println("处理文件:" + file.getName());
FileUpdaterManager.update(context);
//写回文件
FileUtils.write(file, context.getContent(), "UTF-8");
} else {
if (ignorePath.contains(file.getName())) {
return;
}
for (File childFile : file.listFiles()) {
doReplace(childFile);
}
}
}
}