in src/main/java/org/apache/maven/plugins/toolchain/ToolchainMojo.java [74:107]
public void execute() throws MojoExecutionException, MojoFailureException {
if (toolchains == null) {
// should not happen since parameter is required...
getLog().warn("No toolchains requirements configured.");
return;
}
List<String> nonMatchedTypes = new ArrayList<>();
for (Map.Entry<String, Map<String, String>> entry :
toolchains.getToolchains().entrySet()) {
String type = entry.getKey();
if (!selectToolchain(type, entry.getValue())) {
nonMatchedTypes.add(type);
}
}
if (!nonMatchedTypes.isEmpty()) {
// TODO add the default toolchain instance if defined??
StringBuilder buff = new StringBuilder();
buff.append("Cannot find matching toolchain definitions for the following toolchain types:");
for (String type : nonMatchedTypes) {
buff.append(System.lineSeparator());
buff.append(getToolchainRequirementAsString(type, toolchains.getParams(type)));
}
getLog().error(buff.toString());
throw new MojoFailureException(buff.toString() + System.lineSeparator()
+ "Please make sure you define the required toolchains in your ~/.m2/toolchains.xml file.");
}
}