You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2021/04/24 15:16:19 UTC
[maven-javadoc-plugin] 01/03: Proposed fix for
https://issues.apache.org/jira/browse/MJAVADOC-661.
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch MJAVADOC-661
in repository https://gitbox.apache.org/repos/asf/maven-javadoc-plugin.git
commit f563e9c806413411181caa374000841d5d25ea35
Author: Allen D. Ball <ba...@hcf.dev>
AuthorDate: Mon Aug 24 19:53:33 2020 -0700
Proposed fix for https://issues.apache.org/jira/browse/MJAVADOC-661.
---
.../java/org/apache/maven/plugins/javadoc/JavadocUtil.java | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java b/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java
index 0f8c822..6e5e650 100644
--- a/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java
+++ b/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java
@@ -49,7 +49,6 @@ import java.util.Collection;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.List;
-import java.util.Locale;
import java.util.NoSuchElementException;
import java.util.Properties;
import java.util.Set;
@@ -1017,16 +1016,23 @@ public class JavadocUtil
}
List<String> classes = new ArrayList<>();
+ Pattern pattern =
+ Pattern.compile( "(?i)^(META-INF/versions/(?<v>[0-9]+)/)?(?<n>.+)[.]class$" );
try ( JarInputStream jarStream = new JarInputStream( new FileInputStream( jarFile ) ) )
{
for ( JarEntry jarEntry = jarStream.getNextJarEntry(); jarEntry != null; jarEntry =
jarStream.getNextJarEntry() )
{
- if ( jarEntry.getName().toLowerCase( Locale.ENGLISH ).endsWith( ".class" ) )
+ Matcher matcher = pattern.matcher( jarEntry.getName() );
+ if ( matcher.matches() )
{
- String name = jarEntry.getName().substring( 0, jarEntry.getName().indexOf( "." ) );
+ String version = matcher.group( "v" );
+ if ( StringUtils.isEmpty( version ) || JavaVersion.JAVA_VERSION.isAtLeast( version ) )
+ {
+ String name = matcher.group( "n" );
- classes.add( name.replaceAll( "/", "\\." ) );
+ classes.add( name.replaceAll( "/", "\\." ) );
+ }
}
jarStream.closeEntry();