blob: 09eb0a2a88f4ebe8f42a19b5a19129a95cf99aea [file] [log] [blame]
/*
* 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.*;
import java.util.jar.*;
import org.codehaus.plexus.util.*;
boolean result = true;
try
{
File target = new File( basedir, "target" );
if ( !target.exists() || !target.isDirectory() )
{
System.err.println( "target file is missing or not a directory." );
return false;
}
File artifact = new File( target, "mjar228-1.0-SNAPSHOT.jar" );
if ( !artifact.exists() || artifact.isDirectory() )
{
System.err.println( "artifact file is missing or a directory." );
return false;
}
JarFile jar = new JarFile( artifact );
Attributes manifest = jar.getManifest().getMainAttributes();
if ( !manifest.getValue( new Attributes.Name( "Created-By" ) ).startsWith( "Apache Maven" ) )
{
System.err.println( "Created-By not equals Apache Maven" );
return false;
}
if ( !"myproject.HelloWorld".equals( manifest.get( Attributes.Name.MAIN_CLASS ) ) )
{
System.err.println( Attributes.Name.MAIN_CLASS.toString() + " not equals myproject.HelloWorld" );
return false;
}
if ( !"lib/junit-4.11.jar lib/hamcrest-core-1.3.jar".equals( manifest.get( Attributes.Name.CLASS_PATH ) ) )
{
System.err.println( Attributes.Name.CLASS_PATH.toString() +
" not equals lib/junit-4.11.jar lib/hamcrest-core-1.3.jar" );
return false;
}
}
catch( Throwable e )
{
e.printStackTrace();
result = false;
}
return result;