You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by "Steve Loughran (JIRA)" <ji...@codehaus.org> on 2005/07/14 20:52:57 UTC

[jira] Created: (MNG-590) NPE in org.apache.maven.artifact.DefaultArtifact.hashCode

NPE in org.apache.maven.artifact.DefaultArtifact.hashCode
---------------------------------------------------------

         Key: MNG-590
         URL: http://jira.codehaus.org/browse/MNG-590
     Project: Maven 2
        Type: Bug
    Versions: 2.0-alpha-3    
 Reporter: Steve Loughran
 Attachments: pom.xml

Getting an NPE when attempting to write a POM/. Now, an NPE in a hashCode usually means a gulf between the classes expectatoins and what fields are configured. I dont see anything obvious missing from my pom, though of course I am just learning maven. Either the hashcode operator needs fixing to handle missing data, or something upstream should fail with a meaningful error.

java.lang.NullPointerException
	at org.apache.maven.artifact.DefaultArtifact.hashCode(DefaultArtifact.java:193)
	at java.util.HashMap.hash(HashMap.java:264)
	at java.util.HashMap.put(HashMap.java:382)
	at java.util.HashSet.add(HashSet.java:194)
	at org.apache.maven.artifact.factory.DefaultArtifactFactory.createArtifacts(DefaultArtifactFactory.java:44)
	at org.apache.maven.project.DefaultMavenProjectBuilder.processProjectLogic(DefaultMavenProjectBuilder.java:266)
	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:198)
	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromSourceFile(DefaultMavenProjectBuilder.java:129)
	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:117)
	at org.apache.maven.DefaultMaven.getProject(DefaultMaven.java:266)
	at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:170)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:102)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:233)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)constituent
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:303)
	at org.codehaus.classworlds.Launcher.launch(Launcher.java:243)
	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:416)
	at org.codehaus.classworlds.Launcher.main(Launcher.java:363)



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


[jira] Closed: (MNG-590) NPE in org.apache.maven.artifact.DefaultArtifact.hashCode

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-590?page=all ]
     
Brett Porter closed MNG-590:
----------------------------

    Resolution: Fixed

avoiding NPE.

The problem is that the POM ignores all attributes, so it is effectively <dependency />, which has no group, artifact or version.

> NPE in org.apache.maven.artifact.DefaultArtifact.hashCode
> ---------------------------------------------------------
>
>          Key: MNG-590
>          URL: http://jira.codehaus.org/browse/MNG-590
>      Project: Maven 2
>         Type: Bug
>     Versions: 2.0-alpha-3
>     Reporter: Steve Loughran
>     Priority: Critical
>      Fix For: 2.0-beta-1
>  Attachments: pom.xml
>
>
> Getting an NPE when attempting to write a POM/. Now, an NPE in a hashCode usually means a gulf between the classes expectatoins and what fields are configured. I dont see anything obvious missing from my pom, though of course I am just learning maven. Either the hashcode operator needs fixing to handle missing data, or something upstream should fail with a meaningful error.
> java.lang.NullPointerException
> 	at org.apache.maven.artifact.DefaultArtifact.hashCode(DefaultArtifact.java:193)
> 	at java.util.HashMap.hash(HashMap.java:264)
> 	at java.util.HashMap.put(HashMap.java:382)
> 	at java.util.HashSet.add(HashSet.java:194)
> 	at org.apache.maven.artifact.factory.DefaultArtifactFactory.createArtifacts(DefaultArtifactFactory.java:44)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.processProjectLogic(DefaultMavenProjectBuilder.java:266)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:198)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromSourceFile(DefaultMavenProjectBuilder.java:129)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:117)
> 	at org.apache.maven.DefaultMaven.getProject(DefaultMaven.java:266)
> 	at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:170)
> 	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:102)
> 	at org.apache.maven.cli.MavenCli.main(MavenCli.java:233)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)constituent
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:303)
> 	at org.codehaus.classworlds.Launcher.launch(Launcher.java:243)
> 	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:416)
> 	at org.codehaus.classworlds.Launcher.main(Launcher.java:363)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


[jira] Updated: (MNG-590) NPE in org.apache.maven.artifact.DefaultArtifact.hashCode

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-590?page=all ]

Brett Porter updated MNG-590:
-----------------------------

    Fix Version: 2.0-beta-1

> NPE in org.apache.maven.artifact.DefaultArtifact.hashCode
> ---------------------------------------------------------
>
>          Key: MNG-590
>          URL: http://jira.codehaus.org/browse/MNG-590
>      Project: Maven 2
>         Type: Bug
>     Versions: 2.0-alpha-3
>     Reporter: Steve Loughran
>      Fix For: 2.0-beta-1
>  Attachments: pom.xml
>
>
> Getting an NPE when attempting to write a POM/. Now, an NPE in a hashCode usually means a gulf between the classes expectatoins and what fields are configured. I dont see anything obvious missing from my pom, though of course I am just learning maven. Either the hashcode operator needs fixing to handle missing data, or something upstream should fail with a meaningful error.
> java.lang.NullPointerException
> 	at org.apache.maven.artifact.DefaultArtifact.hashCode(DefaultArtifact.java:193)
> 	at java.util.HashMap.hash(HashMap.java:264)
> 	at java.util.HashMap.put(HashMap.java:382)
> 	at java.util.HashSet.add(HashSet.java:194)
> 	at org.apache.maven.artifact.factory.DefaultArtifactFactory.createArtifacts(DefaultArtifactFactory.java:44)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.processProjectLogic(DefaultMavenProjectBuilder.java:266)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:198)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromSourceFile(DefaultMavenProjectBuilder.java:129)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:117)
> 	at org.apache.maven.DefaultMaven.getProject(DefaultMaven.java:266)
> 	at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:170)
> 	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:102)
> 	at org.apache.maven.cli.MavenCli.main(MavenCli.java:233)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)constituent
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:303)
> 	at org.codehaus.classworlds.Launcher.launch(Launcher.java:243)
> 	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:416)
> 	at org.codehaus.classworlds.Launcher.main(Launcher.java:363)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


[jira] Updated: (MNG-590) NPE in org.apache.maven.artifact.Deev@maven.apache.org

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-590?page=all ]

Brett Porter updated MNG-590:
-----------------------------

    Priority: Critical  (was: Major)

> NPE in org.apache.maven.artifact.DefaultArtifact.hashCode
> ---------------------------------------------------------
>
>          Key: MNG-590
>          URL: http://jira.codehaus.org/browse/MNG-590
>      Project: Maven 2
>         Type: Bug
>     Versions: 2.0-alpha-3
>     Reporter: Steve Loughran
>     Priority: Critical
>      Fix For: 2.0-beta-1
>  Attachments: pom.xml
>
>
> Getting an NPE when attempting to write a POM/. Now, an NPE in a hashCode usually means a gulf between the classes expectatoins and what fields are configured. I dont see anFrom dev-return-41999-apmail-maven-dev-archive=maven.apache.org@maven.apache.org Wed Jul 20 07:22:27 2005
Return-Path: <de...@maven.apache.org>
Delivered-To: apmail-maven-dev-archive@www.apache.org
Received: (qmail 37076 invoked from network); 20 Jul 2005 07:22:24 -0000
Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199)
  by minotaur.apache.org with SMTP; 20 Jul 2005 07:22:24 -0000
Received: (qmail 5764 invoked by uid 500); 20 Jul 2005 07:22:08 -0000
Delivered-To: apmail-maven-dev-archive@maven.apache.org
Received: (qmail 5540 invoked by uid 500); 20 Jul 2005 07:22:06 -0000
Mailing-List: contact dev-help@maven.apache.org; run by ezmlm
Precedence: bulk
List-Unsubscribe: <ma...@maven.apache.org>
List-Help: <ma...@maven.apache.org>
List-Post: <ma...@maven.apache.org>
List-Id: "Maven Developers List" <dev.maven.apache.org>
Reply-To: "Maven Developers List" <de...@maven.apache.org>
Delivered-To: mailing list dything obvious missing from my pom, though of course I am just learning maven. Either the hashcode operator needs fixing to handle missing data, or something upstream should fail with a meaningful error.
> java.lang.NullPointerException
> 	at org.apache.maven.artifact.DefaultArtifact.hashCode(DefaultArtifact.java:193)
> 	at java.util.HashMap.hash(HashMap.java:264)
> 	at java.util.HashMap.put(HashMap.java:382)
> 	at java.util.HashSet.add(HashSet.java:194)
> 	at org.apache.maven.artifact.factory.DefaultArtifactFactory.createArtifacts(DefaultArtifactFactory.java:44)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.processProjectLogic(DefaultMavenProjectBuilder.java:266)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:198)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromSourceFile(DefaultMavenProjectBuilder.java:129)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:117)
> 	at org.apache.maven1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-Virus-Checked: Checked by ClamAV on apache.org
X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N

     [ http://jira.codehaus.org/browse/MNG-59?page=all ]

Brett Porter updated MNG-59:
----------------------------

    Priority: Critical  (was: Major)

> write an m1 component
> ---------------------
>
>          Key: MNG-59
>          URL: http://jira.codehaus.org/browse/MNG-59
>      Project: Maven 2
>         Type: New Feature
>     Reporter: Brett Porter
>     Priority: Critical
>      Fix For: 2.0-beta-1

>
>
> write a component that runs an m1 instance.
> An m1 component could be called upon to run an m1 build whenever it is encountered (v3 POM) or by a compat. flag on the command line. The m1 component just pulls down the m1 POM (eg maven-1.0.pom - not the project's pom), reads the deps (we'd need the v3 reader working 
> here), pulls them down using existing m2 stuff, then creates a forehead classloader manually, and firev@maven.apache.org
Received: (qmail 5382 invoked by uid 99); 20 Jul 2005 07:22:05 -0000
Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49)
    by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Jul 2005 00:22:04 -0700
X-ASF-Spam-Status: No, hits=0.4 required=10.0
	tests=DNS_FROM_RFC_ABUSE
X-Spam-Check-By: apache.org
Received-SPF: neutral (asf.osuosl.org: local policy)
Received: from [63.246.20.114] (HELO 63-246-20-114.contegix.com) (63.246.20.114)
    by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Jul 2005 00:21:59 -0700
Received: (qmail 12616 invoked by uid 89); 20 Jul 2005 07:22:02 -0000
Received: from unknown (HELO codehaus01.managed.contegix.com) (127.0.0.1)
  by smtp.domain.com with SMTP; 20 Jul 2005 07:22:02 -0000
Message-ID: <18...@codehaus01.managed.contegix.com>
Date: Wed, 20 Jul 2005 02:22:02 -0500 (CDT)
From: "Brett Porter (JIRA)" <ji...@codehaus.org>
To: dev@maven.apache.org
Subject: [jira] Updated: (MNG-558) Incorrect groupId, artifactId, version used during install
In-Reply-To: <24...@codehaus01.managed.contegix.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-Virus-Checked: Checked by ClamAV on apache.org
X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N

     [ http://jira.codehaus.org/browse/MNG-558?page=all ]

Brett Porter updated MNG-558:
-----------------------------

    Priority: Critical  (was: Major)

> Incorrect groupId, artifactId, version used during install
> ----------------------------------------------------------
>
>          Key: MNG-558
>          URL: http://jira.codehaus.org/browse/MNG-558
>      Project: Maven 2
>         Type: Bug
>   Components: maven-artifact
>     Versions: 2.0-alpha-3
>  Environment: Maven 2.0-alpha-3, Java 1.5.0_02, WinXP SP2
>     Reporter: John Fallows
>     Priority: Critical
>      Fix For: 2.0-beta-1

>
>
> When <pluginManagement> is present in pom.xml with "pom" packaging,
> then the last plugin artifact information (groupId, artifactId,
> version) is used during m2 install.
> <?xml version="1.0" encoding="UTF-8"?>
> <project>
>  <modelVersion>4.0.0</modelVersion>
>  <groupId>org.example</groupId>
>  <artifactId>sample</artifactId>
>  <version>alpha-1</version>
>  <packaging>pom</packaging>
>  <pluginManagement>
>    <plugins>
>      <plugin>
>        <groupId>org.apache.maven.plugins</groupId>
>        <artifactId>maven-compiler-plugin</artifactId>
>        <version>1.0-alpha-1</version>
>      </plugin>
>    </plugins>
>  </pluginManagement>
> </project>
> [INFO] ----------------------------------------------------------------------------
> [INFO] Building org.apache.maven.plugins:maven-compiler-plugin:pom:1.0-alpha-1
> [INFO] ----------------------------------------------------------------------------
> [INFO] maven-install-plugin: resolved to version 2.0-alpha-3 from
> local repository
> [INFO] [install:install]
> [INFO] Installing C:\Development\Projects\sample\pom.xml to
> C:\Documents and
> Settings\jfallows\.m2\repository\org\apache\maven\plugins\maven-compiler-plugin\1.0-alpha-1\maven-compiler-plugin-1.0-alpha-1.pom
> [INFO] ----------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO] ----------------------------------------------------------------------------
> [INFO] Total time: 1 second
> [INFO] Finished at: Thu Jul 07 11:14:11 PDT 2005
> [INFO] Final Memory: 1M/3M
> [INFO] ----------------------------------------------------------------------------
> However, if <pluginManagement> is removed, giving:
> <?xml version="1.0" encoding="UTF-8"?>
> <project>
>  <modelVersion>4.0.0</modelVersion>
>  <groupId>org.example</groupId>
>  <artifactId>sample</artifactId>
>  <version>alpha-1</version>
>  <packaging>pom</packaging>
> </project>
> then everything works as expected, as shown below:
> [INFO] ----------------------------------------------------------------------------
> [INFO] Building org.example:sample:pom:alpha-1
> [INFO] ----------------------------------------------------------------------------
> [INFO] maven-install-plugin: resolved to version 2.0-alpha-3 from
> local repository
> [INFO] [install:install]
> [INFO] Installing C:\Development\Projects\sample\pom.xml to
> C:\Documents and
> Settings\jfallows\.m2\repository\org\example\sample\alpha-1\sample-alpha-1.pom
> [INFO] ----------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO] ----------------------------------------------------------------------------
> [INFO] Total time: 1 second
> [INFO] Finished at: Thu Jul 07 11:15:54 PDT 2005
> [INFO] Final Memory: 1M/3M
> [INFO] ----------------------------------------------------------------------------
> It doesn't appear to be limited to "pom" packaging, after changing to
> "jar" packaging, the m2 install behavior is still incorrectly
> influenced by the existence of <pluginManagement> in the pom.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


.DefaultMaven.getProject(DefaultMaven.java:266)
> 	at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:170)
> 	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:102)
> 	at org.apache.maven.cli.MavenCli.main(MavenCli.java:233)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)constituent
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:303)
> 	at org.codehaus.classworlds.Launcher.launch(Launcher.java:243)
> 	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:416)
> 	at org.codehaus.classworlds.Launcher.main(Launcher.java:363)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
Fes up a new MavenSession (bypassing the CLI stuff).
> I think I'd code that up fairly quickly, and then we have a way to run m1 stuff from m2, but not necessarily integrate it (just give a better way to migrate, and avoids a multiple install dilemma). It may even be possible to mix builds in a reactor by detecting the POM version. 
> Some properties could be shared from m2 to override the defaults in m1 so they coexist nicely.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


or more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org