1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.project;
20
21 import java.io.File;
22 import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
23
24
25
26
27 public class InvalidProjectVersionException extends ProjectBuildingException {
28
29 private final String locationInPom;
30
31 private final String offendingVersion;
32
33 public InvalidProjectVersionException(
34 String projectId,
35 String locationInPom,
36 String offendingVersion,
37 File pomFile,
38 InvalidVersionSpecificationException cause) {
39 super(projectId, formatMessage(projectId, locationInPom, offendingVersion, cause), pomFile, cause);
40 this.locationInPom = locationInPom;
41 this.offendingVersion = offendingVersion;
42 }
43
44 private static String formatMessage(
45 String projectId,
46 String locationInPom,
47 String offendingVersion,
48 InvalidVersionSpecificationException cause) {
49 return "Invalid version: " + offendingVersion + " found for: " + locationInPom + " in project: " + projectId
50 + ". Reason: " + cause.getMessage();
51 }
52
53 public String getOffendingVersion() {
54 return offendingVersion;
55 }
56
57 public String getLocationInPom() {
58 return locationInPom;
59 }
60 }