You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by tr...@apache.org on 2005/03/08 02:55:22 UTC
cvs commit: maven-components/maven-core/src/main/java/org/apache/maven/project DefaultMavenProjectBuilder.java
trygvis 2005/03/07 17:55:22
Modified: maven-core/src/main/java/org/apache/maven/project
DefaultMavenProjectBuilder.java
Log:
o Improving some error reporting.
Revision Changes Path
1.37 +36 -27 maven-components/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
Index: DefaultMavenProjectBuilder.java
===================================================================
RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- DefaultMavenProjectBuilder.java 7 Mar 2005 22:08:23 -0000 1.36
+++ DefaultMavenProjectBuilder.java 8 Mar 2005 01:55:22 -0000 1.37
@@ -16,6 +16,20 @@
* limitations under the License.
*/
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.maven.MavenConstants;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.DefaultArtifact;
@@ -36,27 +50,17 @@
import org.apache.maven.project.validation.ModelValidationResult;
import org.apache.maven.project.validation.ModelValidator;
import org.apache.maven.repository.RepositoryUtils;
+
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.dag.CycleDetectedException;
import org.codehaus.plexus.util.dag.DAG;
import org.codehaus.plexus.util.dag.TopologicalSorter;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
+/**
+ * @version $Id$
+ */
public class DefaultMavenProjectBuilder
extends AbstractLogEnabled
implements MavenProjectBuilder, Initializable
@@ -225,33 +229,37 @@
return project;
}
- private Model readModel( File projectDescriptor )
+ private Model readModel( File file )
throws ProjectBuildingException
{
try
{
- return readModel( new FileReader( projectDescriptor ) );
+ return modelReader.read( new FileReader( file ) );
+ }
+ catch ( FileNotFoundException e )
+ {
+ throw new ProjectBuildingException( "Could not find the model file '" + file.getAbsolutePath() + "'." );
}
- catch ( FileNotFoundException ex )
+ catch ( Exception e )
{
- throw new ProjectBuildingException( "Error while building model.", ex );
+ throw new ProjectBuildingException( "Error while reading model from file '" + file.getAbsolutePath() + "'.", e );
}
}
- private Model readModel( Reader reader )
+ private Model readModel( URL url )
throws ProjectBuildingException
{
try
{
- return modelReader.read( reader );
+ return modelReader.read( new InputStreamReader( url.openStream() ) );
}
- catch ( Exception ex )
+ catch ( IOException e )
{
- throw new ProjectBuildingException( "Error while building model.", ex );
+ throw new ProjectBuildingException( "Error while reading model.", e );
}
- finally
+ catch ( Exception ex )
{
- IOUtil.close( reader );
+ throw new ProjectBuildingException( "Error while building model from " + url.toExternalForm(), ex );
}
}
@@ -342,7 +350,8 @@
private Model getSuperModel()
throws ProjectBuildingException
{
- return readModel( new InputStreamReader( DefaultMavenProjectBuilder.class.getResourceAsStream(
- "pom-" + MavenConstants.MAVEN_MODEL_VERSION + ".xml" ) ) );
+ URL url = DefaultMavenProjectBuilder.class.getResource( "pom-" + MavenConstants.MAVEN_MODEL_VERSION + ".xml" );
+
+ return readModel( url );
}
-}
\ No newline at end of file
+}