MCPcopy Create free account
hub / github.com/LFYSec/MScan / main

Method main

src/main/java/pascal/taie/Main.java:44–64  ·  view source on GitHub ↗
(String... args)

Source from the content-addressed store, hash-verified

42 private static final Logger logger = LogManager.getLogger(Main.class);
43
44 public static void main(String... args) {
45 Timer.runAndCount(() -> {
46 Options options = processArgs(args);
47 try {
48 options.setClasspathKeywords(Config.classpathKeywords);
49 options.setAppClassPath(JarUtil.collectAppClassPath());
50 options.setClassPath(JarUtil.collectClassPath());
51 } catch (Exception e) {
52 throw new RuntimeException(e);
53 }
54 LoggerConfigs.setOutput(options.getOutputDir());
55 Plan plan = processConfigs(options);
56 if (plan.analyses().isEmpty()) {
57 logger.info("No analyses are specified");
58 System.exit(0);
59 }
60 buildWorld(options, plan.analyses());
61 executePlan(plan);
62 LoggerConfigs.reconfigure();
63 }, "Tai-e");
64 }
65
66 /**
67 * If the given options is empty or specify to print help information,

Callers 1

mainMethod · 0.95

Calls 15

runAndCountMethod · 0.95
processArgsMethod · 0.95
setClasspathKeywordsMethod · 0.95
setAppClassPathMethod · 0.95
collectAppClassPathMethod · 0.95
setClassPathMethod · 0.95
collectClassPathMethod · 0.95
setOutputMethod · 0.95
getOutputDirMethod · 0.95
processConfigsMethod · 0.95
buildWorldMethod · 0.95
executePlanMethod · 0.95

Tested by

no test coverage detected