You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2022/10/28 08:05:26 UTC
[maven-plugin-tools] branch master updated: [MPLUGIN-437] Fixes to the plugin descriptor generation (#167)
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-plugin-tools.git
The following commit(s) were added to refs/heads/master by this push:
new ebdb063e [MPLUGIN-437] Fixes to the plugin descriptor generation (#167)
ebdb063e is described below
commit ebdb063ea287a208dd1553a6a21e362a33c14847
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Fri Oct 28 10:05:21 2022 +0200
[MPLUGIN-437] Fixes to the plugin descriptor generation (#167)
---
.../JavaAnnotationsMojoDescriptorExtractor.java | 29 ++++++++++++++--------
.../converter/JavaClassConverterContext.java | 8 ------
2 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/JavaAnnotationsMojoDescriptorExtractor.java b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/JavaAnnotationsMojoDescriptorExtractor.java
index ac7b4ea9..e660eb2a 100644
--- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/JavaAnnotationsMojoDescriptorExtractor.java
+++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/JavaAnnotationsMojoDescriptorExtractor.java
@@ -540,21 +540,30 @@ public class JavaAnnotationsMojoDescriptorExtractor
return;
}
- // extract sources to target/maven-plugin-plugin-sources/${groupId}/${artifact}/sources
- File extractDirectory = new File( request.getProject().getBuild().getDirectory(),
+ if ( sourcesArtifact.getFile().isFile() )
+ {
+ // extract sources to target/maven-plugin-plugin-sources/${groupId}/${artifact}/sources
+ File extractDirectory = new File( request.getProject().getBuild().getDirectory(),
"maven-plugin-plugin-sources/" + sourcesArtifact.getGroupId() + "/"
+ sourcesArtifact.getArtifactId() + "/" + sourcesArtifact.getVersion()
+ "/" + sourcesArtifact.getClassifier() );
- extractDirectory.mkdirs();
+ extractDirectory.mkdirs();
- UnArchiver unArchiver = archiverManager.getUnArchiver( "jar" );
- unArchiver.setSourceFile( sourcesArtifact.getFile() );
- unArchiver.setDestDirectory( extractDirectory );
- unArchiver.extract();
+ UnArchiver unArchiver = archiverManager.getUnArchiver( "jar" );
+ unArchiver.setSourceFile( sourcesArtifact.getFile() );
+ unArchiver.setDestDirectory( extractDirectory );
+ unArchiver.extract();
- extendJavaProjectBuilder( builder,
- Arrays.asList( extractDirectory ),
- request.getDependencies() );
+ extendJavaProjectBuilder( builder,
+ Arrays.asList( extractDirectory ),
+ request.getDependencies() );
+ }
+ else if ( sourcesArtifact.getFile().isDirectory() )
+ {
+ extendJavaProjectBuilder( builder,
+ Arrays.asList( sourcesArtifact.getFile() ),
+ request.getDependencies() );
+ }
}
catch ( ArchiverException | NoSuchArchiverException e )
{
diff --git a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/converter/JavaClassConverterContext.java b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/converter/JavaClassConverterContext.java
index f87848f1..f4a6a356 100644
--- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/converter/JavaClassConverterContext.java
+++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/extractor/annotations/converter/JavaClassConverterContext.java
@@ -34,7 +34,6 @@ import java.util.stream.Collectors;
import com.thoughtworks.qdox.JavaProjectBuilder;
import com.thoughtworks.qdox.builder.TypeAssembler;
import com.thoughtworks.qdox.library.ClassNameLibrary;
-import com.thoughtworks.qdox.library.SourceLibrary;
import com.thoughtworks.qdox.model.JavaClass;
import com.thoughtworks.qdox.model.JavaField;
import com.thoughtworks.qdox.model.JavaModule;
@@ -81,13 +80,6 @@ public class JavaClassConverterContext
Map<String, MojoAnnotatedClass> mojoAnnotatedClasses,
JavadocLinkGenerator linkGenerator, int lineNumber )
{
- if ( !( mojoClass.getJavaClassLibrary() instanceof SourceLibrary )
- || !( declaringClass.getJavaClassLibrary() instanceof SourceLibrary ) )
- {
- throw new IllegalStateException( "The given javaClasses must be loaded by SourceLibrary to have access to"
- + "e.g. the imports statements in it" );
- }
-
this.mojoClass = mojoClass;
this.declaringClass = declaringClass;
this.javaProjectBuilder = javaProjectBuilder;