You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Dennis Lundberg <de...@apache.org> on 2012/09/16 14:48:52 UTC

Re: svn commit: r1385200 - in /maven/plugins/trunk/maven-javadoc-plugin: pom.xml src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java

Hi

On 2012-09-16 01:22, bimargulies@apache.org wrote:
> Author: bimargulies
> Date: Sat Sep 15 23:22:45 2012
> New Revision: 1385200
> 
> URL: http://svn.apache.org/viewvc?rev=1385200&view=rev
> Log:
> MJAVADOC-342: An incomplete fix for the NPE bugs in AbstractJavadocMojo.java
> o protect all the calls to getJavadocDirectory
> o update to threadsafe version of maven-shade-plugin.

This change broke the plugins-wit-ITs-m2 build in Jenkins, because the
new version of the shade-plugin requires Maven 3. Is this an important
change?

If so, the we need to adjust the aggregator POM for plugin to only build
the Javadoc plugin with Maven 3.

> 
> Modified:
>     maven/plugins/trunk/maven-javadoc-plugin/pom.xml
>     maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
> 
> Modified: maven/plugins/trunk/maven-javadoc-plugin/pom.xml
> URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/pom.xml?rev=1385200&r1=1385199&r2=1385200&view=diff
> ==============================================================================
> --- maven/plugins/trunk/maven-javadoc-plugin/pom.xml (original)
> +++ maven/plugins/trunk/maven-javadoc-plugin/pom.xml Sat Sep 15 23:22:45 2012
> @@ -266,7 +266,7 @@ under the License.
>          <plugin>
>            <groupId>org.apache.maven.plugins</groupId>
>            <artifactId>maven-shade-plugin</artifactId>
> -          <version>1.2.1</version>
> +          <version>2.0</version>
>          </plugin>
>        </plugins>
>      </pluginManagement>
> 
> Modified: maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
> URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java?rev=1385200&r1=1385199&r2=1385200&view=diff
> ==============================================================================
> --- maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java (original)
> +++ maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java Sat Sep 15 23:22:45 2012
> @@ -26,11 +26,7 @@ import org.apache.maven.artifact.factory
>  import org.apache.maven.artifact.handler.ArtifactHandler;
>  import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
>  import org.apache.maven.artifact.repository.ArtifactRepository;
> -import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
> -import org.apache.maven.artifact.resolver.ArtifactResolutionException;
> -import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
> -import org.apache.maven.artifact.resolver.ArtifactResolver;
> -import org.apache.maven.artifact.resolver.MultipleArtifactsNotFoundException;
> +import org.apache.maven.artifact.resolver.*;
>  import org.apache.maven.artifact.resolver.filter.AndArtifactFilter;
>  import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
>  import org.apache.maven.artifact.resolver.filter.IncludesArtifactFilter;
> @@ -42,16 +38,7 @@ import org.apache.maven.model.Plugin;
>  import org.apache.maven.model.Resource;
>  import org.apache.maven.plugin.AbstractMojo;
>  import org.apache.maven.plugin.MojoExecutionException;
> -import org.apache.maven.plugin.javadoc.options.BootclasspathArtifact;
> -import org.apache.maven.plugin.javadoc.options.DocletArtifact;
> -import org.apache.maven.plugin.javadoc.options.Group;
> -import org.apache.maven.plugin.javadoc.options.JavadocOptions;
> -import org.apache.maven.plugin.javadoc.options.JavadocPathArtifact;
> -import org.apache.maven.plugin.javadoc.options.OfflineLink;
> -import org.apache.maven.plugin.javadoc.options.ResourcesArtifact;
> -import org.apache.maven.plugin.javadoc.options.Tag;
> -import org.apache.maven.plugin.javadoc.options.Taglet;
> -import org.apache.maven.plugin.javadoc.options.TagletArtifact;
> +import org.apache.maven.plugin.javadoc.options.*;
>  import org.apache.maven.plugin.javadoc.options.io.xpp3.JavadocOptionsXpp3Writer;
>  import org.apache.maven.plugin.javadoc.resolver.JavadocBundle;
>  import org.apache.maven.plugin.javadoc.resolver.ResourceResolver;
> @@ -76,43 +63,15 @@ import org.codehaus.plexus.archiver.UnAr
>  import org.codehaus.plexus.archiver.manager.ArchiverManager;
>  import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
>  import org.codehaus.plexus.components.io.fileselectors.IncludeExcludeFileSelector;
> -import org.codehaus.plexus.util.FileUtils;
> -import org.codehaus.plexus.util.IOUtil;
> -import org.codehaus.plexus.util.ReaderFactory;
> -import org.codehaus.plexus.util.StringUtils;
> -import org.codehaus.plexus.util.WriterFactory;
> +import org.codehaus.plexus.util.*;
>  import org.codehaus.plexus.util.cli.CommandLineException;
>  import org.codehaus.plexus.util.cli.CommandLineUtils;
>  import org.codehaus.plexus.util.cli.Commandline;
>  import org.codehaus.plexus.util.xml.Xpp3Dom;
>  
> -import java.io.File;
> -import java.io.FileOutputStream;
> -import java.io.FileWriter;
> -import java.io.IOException;
> -import java.io.InputStream;
> -import java.io.OutputStream;
> -import java.io.Writer;
> -import java.net.MalformedURLException;
> -import java.net.URI;
> -import java.net.URISyntaxException;
> -import java.net.URL;
> -import java.net.URLClassLoader;
> -import java.util.ArrayList;
> -import java.util.Arrays;
> -import java.util.Calendar;
> -import java.util.Collection;
> -import java.util.Collections;
> -import java.util.HashMap;
> -import java.util.HashSet;
> -import java.util.LinkedHashSet;
> -import java.util.LinkedList;
> -import java.util.List;
> -import java.util.Locale;
> -import java.util.Map;
> -import java.util.Properties;
> -import java.util.Set;
> -import java.util.StringTokenizer;
> +import java.io.*;
> +import java.net.*;
> +import java.util.*;
>  
>  import static org.apache.maven.plugin.javadoc.JavadocUtil.*;
>  import static org.codehaus.plexus.util.IOUtil.close;
> @@ -2102,14 +2061,17 @@ public abstract class AbstractJavadocMoj
>                              sourcePaths.addAll( JavadocUtil.pruneDirs( subProject, sourceRoots ) );
>                          }
>  
> -                        String javadocDirRelative =
> -                            PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
> -                        File javadocDir = new File( subProject.getBasedir(), javadocDirRelative );
> -                        if ( javadocDir.exists() && javadocDir.isDirectory() )
> +                        if ( getJavadocDirectory() != null )
>                          {
> -                            List<String> l = JavadocUtil.pruneDirs( subProject, Collections.singletonList(
> -                                javadocDir.getAbsolutePath() ) );
> -                            sourcePaths.addAll( l );
> +                            String javadocDirRelative =
> +                                    PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
> +                            File javadocDir = new File( subProject.getBasedir(), javadocDirRelative );
> +                            if ( javadocDir.exists() && javadocDir.isDirectory() )
> +                            {
> +                                List<String> l = JavadocUtil.pruneDirs( subProject, Collections.singletonList(
> +                                        javadocDir.getAbsolutePath() ) );
> +                                sourcePaths.addAll( l );
> +                            }
>                          }
>                      }
>                  }
> @@ -4026,7 +3988,7 @@ public abstract class AbstractJavadocMoj
>          {
>              for ( MavenProject subProject : reactorProjects )
>              {
> -                if ( subProject != project )
> +                if ( subProject != project && getJavadocDirectory() != null )
>                  {
>                      String javadocDirRelative =
>                          PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
> 
> 


-- 
Dennis Lundberg

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


Re: svn commit: r1385200 - in /maven/plugins/trunk/maven-javadoc-plugin: pom.xml src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java

Posted by Benson Margulies <bi...@gmail.com>.
On Sun, Sep 16, 2012 at 8:48 AM, Dennis Lundberg <de...@apache.org> wrote:
> Hi
>
> On 2012-09-16 01:22, bimargulies@apache.org wrote:
>> Author: bimargulies
>> Date: Sat Sep 15 23:22:45 2012
>> New Revision: 1385200
>>
>> URL: http://svn.apache.org/viewvc?rev=1385200&view=rev
>> Log:
>> MJAVADOC-342: An incomplete fix for the NPE bugs in AbstractJavadocMojo.java
>> o protect all the calls to getJavadocDirectory
>> o update to threadsafe version of maven-shade-plugin.
>
> This change broke the plugins-wit-ITs-m2 build in Jenkins, because the
> new version of the shade-plugin requires Maven 3. Is this an important
> change?
>
> If so, the we need to adjust the aggregator POM for plugin to only build
> the Javadoc plugin with Maven 3.

I did it to get a thread-safe version of shade. That's not very
important. Feel free to revert.

>
>>
>> Modified:
>>     maven/plugins/trunk/maven-javadoc-plugin/pom.xml
>>     maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
>>
>> Modified: maven/plugins/trunk/maven-javadoc-plugin/pom.xml
>> URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/pom.xml?rev=1385200&r1=1385199&r2=1385200&view=diff
>> ==============================================================================
>> --- maven/plugins/trunk/maven-javadoc-plugin/pom.xml (original)
>> +++ maven/plugins/trunk/maven-javadoc-plugin/pom.xml Sat Sep 15 23:22:45 2012
>> @@ -266,7 +266,7 @@ under the License.
>>          <plugin>
>>            <groupId>org.apache.maven.plugins</groupId>
>>            <artifactId>maven-shade-plugin</artifactId>
>> -          <version>1.2.1</version>
>> +          <version>2.0</version>
>>          </plugin>
>>        </plugins>
>>      </pluginManagement>
>>
>> Modified: maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
>> URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java?rev=1385200&r1=1385199&r2=1385200&view=diff
>> ==============================================================================
>> --- maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java (original)
>> +++ maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java Sat Sep 15 23:22:45 2012
>> @@ -26,11 +26,7 @@ import org.apache.maven.artifact.factory
>>  import org.apache.maven.artifact.handler.ArtifactHandler;
>>  import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
>>  import org.apache.maven.artifact.repository.ArtifactRepository;
>> -import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
>> -import org.apache.maven.artifact.resolver.ArtifactResolutionException;
>> -import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
>> -import org.apache.maven.artifact.resolver.ArtifactResolver;
>> -import org.apache.maven.artifact.resolver.MultipleArtifactsNotFoundException;
>> +import org.apache.maven.artifact.resolver.*;
>>  import org.apache.maven.artifact.resolver.filter.AndArtifactFilter;
>>  import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
>>  import org.apache.maven.artifact.resolver.filter.IncludesArtifactFilter;
>> @@ -42,16 +38,7 @@ import org.apache.maven.model.Plugin;
>>  import org.apache.maven.model.Resource;
>>  import org.apache.maven.plugin.AbstractMojo;
>>  import org.apache.maven.plugin.MojoExecutionException;
>> -import org.apache.maven.plugin.javadoc.options.BootclasspathArtifact;
>> -import org.apache.maven.plugin.javadoc.options.DocletArtifact;
>> -import org.apache.maven.plugin.javadoc.options.Group;
>> -import org.apache.maven.plugin.javadoc.options.JavadocOptions;
>> -import org.apache.maven.plugin.javadoc.options.JavadocPathArtifact;
>> -import org.apache.maven.plugin.javadoc.options.OfflineLink;
>> -import org.apache.maven.plugin.javadoc.options.ResourcesArtifact;
>> -import org.apache.maven.plugin.javadoc.options.Tag;
>> -import org.apache.maven.plugin.javadoc.options.Taglet;
>> -import org.apache.maven.plugin.javadoc.options.TagletArtifact;
>> +import org.apache.maven.plugin.javadoc.options.*;
>>  import org.apache.maven.plugin.javadoc.options.io.xpp3.JavadocOptionsXpp3Writer;
>>  import org.apache.maven.plugin.javadoc.resolver.JavadocBundle;
>>  import org.apache.maven.plugin.javadoc.resolver.ResourceResolver;
>> @@ -76,43 +63,15 @@ import org.codehaus.plexus.archiver.UnAr
>>  import org.codehaus.plexus.archiver.manager.ArchiverManager;
>>  import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
>>  import org.codehaus.plexus.components.io.fileselectors.IncludeExcludeFileSelector;
>> -import org.codehaus.plexus.util.FileUtils;
>> -import org.codehaus.plexus.util.IOUtil;
>> -import org.codehaus.plexus.util.ReaderFactory;
>> -import org.codehaus.plexus.util.StringUtils;
>> -import org.codehaus.plexus.util.WriterFactory;
>> +import org.codehaus.plexus.util.*;
>>  import org.codehaus.plexus.util.cli.CommandLineException;
>>  import org.codehaus.plexus.util.cli.CommandLineUtils;
>>  import org.codehaus.plexus.util.cli.Commandline;
>>  import org.codehaus.plexus.util.xml.Xpp3Dom;
>>
>> -import java.io.File;
>> -import java.io.FileOutputStream;
>> -import java.io.FileWriter;
>> -import java.io.IOException;
>> -import java.io.InputStream;
>> -import java.io.OutputStream;
>> -import java.io.Writer;
>> -import java.net.MalformedURLException;
>> -import java.net.URI;
>> -import java.net.URISyntaxException;
>> -import java.net.URL;
>> -import java.net.URLClassLoader;
>> -import java.util.ArrayList;
>> -import java.util.Arrays;
>> -import java.util.Calendar;
>> -import java.util.Collection;
>> -import java.util.Collections;
>> -import java.util.HashMap;
>> -import java.util.HashSet;
>> -import java.util.LinkedHashSet;
>> -import java.util.LinkedList;
>> -import java.util.List;
>> -import java.util.Locale;
>> -import java.util.Map;
>> -import java.util.Properties;
>> -import java.util.Set;
>> -import java.util.StringTokenizer;
>> +import java.io.*;
>> +import java.net.*;
>> +import java.util.*;
>>
>>  import static org.apache.maven.plugin.javadoc.JavadocUtil.*;
>>  import static org.codehaus.plexus.util.IOUtil.close;
>> @@ -2102,14 +2061,17 @@ public abstract class AbstractJavadocMoj
>>                              sourcePaths.addAll( JavadocUtil.pruneDirs( subProject, sourceRoots ) );
>>                          }
>>
>> -                        String javadocDirRelative =
>> -                            PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
>> -                        File javadocDir = new File( subProject.getBasedir(), javadocDirRelative );
>> -                        if ( javadocDir.exists() && javadocDir.isDirectory() )
>> +                        if ( getJavadocDirectory() != null )
>>                          {
>> -                            List<String> l = JavadocUtil.pruneDirs( subProject, Collections.singletonList(
>> -                                javadocDir.getAbsolutePath() ) );
>> -                            sourcePaths.addAll( l );
>> +                            String javadocDirRelative =
>> +                                    PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
>> +                            File javadocDir = new File( subProject.getBasedir(), javadocDirRelative );
>> +                            if ( javadocDir.exists() && javadocDir.isDirectory() )
>> +                            {
>> +                                List<String> l = JavadocUtil.pruneDirs( subProject, Collections.singletonList(
>> +                                        javadocDir.getAbsolutePath() ) );
>> +                                sourcePaths.addAll( l );
>> +                            }
>>                          }
>>                      }
>>                  }
>> @@ -4026,7 +3988,7 @@ public abstract class AbstractJavadocMoj
>>          {
>>              for ( MavenProject subProject : reactorProjects )
>>              {
>> -                if ( subProject != project )
>> +                if ( subProject != project && getJavadocDirectory() != null )
>>                  {
>>                      String javadocDirRelative =
>>                          PathUtils.toRelative( project.getBasedir(), getJavadocDirectory().getAbsolutePath() );
>>
>>
>
>
> --
> Dennis Lundberg
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>

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