[Commented] (MSHARED-665) ASMDependencyAnalyzer.analyze(...) returns non-classes

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[Commented] (MSHARED-665) ASMDependencyAnalyzer.analyze(...) returns non-classes

JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/MSHARED-665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16282509#comment-16282509 ]

Andreas Sewe commented on MSHARED-665:

While the {{maven-dependency-analyzer}} project has unit tests, it only has a {{DefaultProjectDependencyAnalyzerTest}}, but lacks an {{ASMDependencyAnalyzerTest}}. Hence, this bugs goes unnoticed.

> ASMDependencyAnalyzer.analyze(...) returns non-classes
> ------------------------------------------------------
>                 Key: MSHARED-665
>                 URL: https://issues.apache.org/jira/browse/MSHARED-665
>             Project: Maven Shared Components
>          Issue Type: Bug
>          Components: maven-dependency-analyzer
>    Affects Versions: maven-dependency-analyzer-1.7
>            Reporter: Andreas Sewe
>         Attachments: example.zip
> The {{ASMDependencyAnalyzer}} returns far to many bogus entries, which are not class names at all.
> The following is taken when the attached example project analyzes itself ({{java -jar target/dependency-analyzer-test-0.0.1-SNAPSHOT.jar file:target/dependency-analyzer-test-0.0.1-SNAPSHOT.jar}}):
> {noformat}
> Error retrieving checksum file for
> charset=([.[^; ]]*)
> java.lang.reflect.Array
> Unable to resolve context key:
> RuntimeInvisibleAnnotations
> javax.swing.tree.TreeModel
> Repetition count must be > 0
> project information for
> empty
> {noformat}
> Note that this is not a problem in the classic {{dependency:analyze}} use case: The goal simply computes the set of class dependencies (which contain the aforementioned bogus class names) of the current project and compares them with the set of classes of its dependencies (this set is fine).
> If one wants to use the {{ASMDependencyAnalyzer}} as a standalone component, however, these bogus class name make it pretty much *useless*.
> Also, even in the {{dependency:analyze}} case, operating with sets that are a lot larger than necessary (there are typically way more strings than class names) may impact performance.

This message was sent by Atlassian JIRA