1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.owasp.dependencycheck.maven;
19
20 import java.util.Locale;
21 import java.util.logging.Level;
22 import java.util.logging.Logger;
23 import org.apache.maven.artifact.Artifact;
24 import org.apache.maven.plugin.MojoExecutionException;
25 import org.apache.maven.plugin.MojoFailureException;
26 import org.apache.maven.plugins.annotations.LifecyclePhase;
27 import org.apache.maven.plugins.annotations.Mojo;
28 import org.apache.maven.plugins.annotations.ResolutionScope;
29 import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
30 import org.owasp.dependencycheck.utils.Settings;
31
32
33
34
35
36
37 @Mojo(
38 name = "update-only",
39 defaultPhase = LifecyclePhase.GENERATE_RESOURCES,
40 threadSafe = true,
41 requiresDependencyResolution = ResolutionScope.NONE,
42 requiresOnline = true
43 )
44 public class UpdateMojo extends BaseDependencyCheckMojo {
45
46
47
48
49 private static final Logger LOGGER = Logger.getLogger(UpdateMojo.class.getName());
50
51
52
53
54
55
56 @Override
57 public boolean canGenerateReport() {
58 return false;
59 }
60
61
62
63
64
65
66
67 @Override
68 public void runCheck() throws MojoExecutionException, MojoFailureException {
69 final Engine engine;
70 try {
71 engine = initializeEngine();
72 engine.update();
73 } catch (DatabaseException ex) {
74 LOGGER.log(Level.FINE, "Database connection error", ex);
75 throw new MojoExecutionException("An exception occured connecting to the local database. Please see the log file for more details.", ex);
76 }
77 engine.cleanup();
78 Settings.cleanup();
79 }
80
81
82
83
84
85
86
87 public String getName(Locale locale) {
88 return "dependency-check-update";
89 }
90
91
92
93
94
95
96
97 public String getDescription(Locale locale) {
98 return "Updates the local cache of the NVD data from NIST.";
99 }
100
101 }