I've created yet another PR for MNG-5805: https://github.com/apache/maven/pull/62 Sorry guys, I was certain I had run m-enforcer-p its as well with 3.3.5 candidate.
2015-08-01 16:57 GMT+03:00 Anton Tanasenko <[email protected]>: > Oh not again, > The LifecyclePhase#toString() method was added by me along with > toLegacyMap. > Looks like I didn't take care of 'mojos' field possibly being null. This > seems to be happening when an extension specifies a lifecycle phase but > doesn't assign any mojo executions to it. > > > 2015-08-01 16:08 GMT+03:00 Karl Heinz Marbaise <[email protected]>: > >> Hi, >> >> +0 from me... >> >> Reference Documentation updated (http://maven.apache.org/ref/3-LATEST/).. >> >> checked with maven-invoker-plugin, maven-install-plugin, with Maven >> itself ;-)... >> and with some of my own projects without any issue... >> >> >> Unfortunately i have found an issue with maven-enforcer-plugin >> (trunk:r1693704) where two integrations test are failing with Maven 3.3.6 >> which do not fail with Maven 3.3.3... >> >> I have attached both log files... >> >> Maven Enforcer accesses methods in maven-core which are marked as >> deprecated...(based on indirect changes): >> >> This has been added with 3.3.6... >> >> ./maven-core/src/main/java/org/apache/maven/lifecycle/mapping/LifecyclePhase.java >> >> >> The following is called indirectly... >> >> @Deprecated >> public static Map<String, String> toLegacyMap( Map<String, >> LifecyclePhase> lifecyclePhases ) >> { >> if ( lifecyclePhases == null ) >> { >> return null; >> } >> >> if ( lifecyclePhases.isEmpty() ) >> { >> return Collections.emptyMap(); >> } >> >> Map<String, String> phases = new LinkedHashMap<>(); >> for ( Map.Entry<String, LifecyclePhase> e: >> lifecyclePhases.entrySet() ) >> { >> phases.put( e.getKey(), e.getValue().toString() ); >> } >> return phases; >> } >> >> >> So the culprit seemed to be this line: >> >> phases.put( e.getKey(), e.getValue().toString() ); >> >> where e.getValue() could be null...but they are not the problem. >> >> The problem is located in the toString() method of LifecyclePhase: >> >> @Override >> public String toString() >> { >> StringBuilder sb = new StringBuilder(); >> boolean first = true; >> for ( LifecycleMojo mojo: getMojos() ) >> { >> if ( first ) >> { >> first = false; >> } >> else >> { >> sb.append( "," ); >> } >> sb.append( mojo.getGoal() ); >> } >> return sb.toString(); >> } >> >> The call to getMojos() is the real problem cause the call to >> "toLegacyMap()" is a static method without relationship to the object >> instance which could explain the non existings content of getMojos()... >> >> This looks to me that maven-enforcer needed to be fixed...But WDYT ? >> >> Kind regards >> Karl Heinz Marbaise >> >> >> On 7/31/15 5:41 AM, Jason van Zyl wrote: >> >>> Hi, >>> >>> Time to release Maven 3.3.6! >>> >>> Here is a link to the issues resolved: >>> >>> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12316922&version=12333058 >>> >>> Staging repo: >>> https://repository.apache.org/content/repositories/maven-1201/ >>> >>> The distributable binaries and sources for testing can be found here: >>> >>> https://repository.apache.org/content/repositories/maven-1201/org/apache/maven/apache-maven/3.3.6/ >>> >>> Specifically the zip, tarball, and source archives can be found here: >>> >>> https://repository.apache.org/content/repositories/maven-1201/org/apache/maven/apache-maven/3.3.6/apache-maven-3.3.6-bin.zip >>> >>> https://repository.apache.org/content/repositories/maven-1201/org/apache/maven/apache-maven/3.3.6/apache-maven-3.3.6-bin.tar.gz >>> >>> https://repository.apache.org/content/repositories/maven-1201/org/apache/maven/apache-maven/3.3.6/apache-maven-3.3.6-src.zip >>> >>> https://repository.apache.org/content/repositories/maven-1201/org/apache/maven/apache-maven/3.3.6/apache-maven-3.3.6-src.tar.gz >>> >>> Source release checksum(s): >>> apache-maven-3.3.6-src.zip sha1: ae409472561584c50691e672539b3eb0f11e806a >>> >>> Staging site: >>> http://people.apache.org/~jvanzyl/maven-3.3.6/ >>> >>> Vote open for 72 hours. >>> >>> [ ] +1 >>> [ ] +0 >>> [ ] -1 >>> >>> Thanks, >>> >>> The Maven Team >>> >> >> >> Kind regards >> Karl Heinz Marbaise >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > > > -- > Regards, > Anton. > -- Regards, Anton.
