/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ import java.io.*; import java.util.*; List artifacts = new ArrayList(); BufferedReader reader = new BufferedReader( new FileReader( new File( basedir, "target/deps.txt" ) ) ); try { String line; while ( ( line = reader.readLine() ) != null ) { if ( line.startsWith( " " ) ) { String artifact = line.trim(); artifact = artifact.substring( 0, artifact.indexOf( ':', artifact.indexOf( ':' ) + 1 ) ); artifacts.add( artifact ); } } } finally { reader.close(); } System.out.println( "Checking dependency closure of shared component..." ); System.out.println( artifacts ); artifacts.remove( "org.apache.maven.shared:maven-artifact-resolver" ); if ( !artifacts.isEmpty() ) { throw new Exception( "shared component leaks unwanted dependencies into plugin class path: " + artifacts ); } return true;