[
https://issues.apache.org/jira/browse/MSHARED-545?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Osipov reassigned MSHARED-545:
--------------------------------------
Assignee: Michael Osipov
> maven-dependency-analyzer fails on classes containing constant long or double
> -----------------------------------------------------------------------------
>
> Key: MSHARED-545
> URL: https://issues.apache.org/jira/browse/MSHARED-545
> Project: Maven Shared Components
> Issue Type: Bug
> Affects Versions: maven-dependency-analyzer-1.6
> Reporter: Jonathan Haber
> Assignee: Michael Osipov
> Priority: Blocker
> Fix For: maven-dependency-analyzer-1.7
>
>
> The maven-dependency-analyzer was updated to parse the constant pool on each
> class file so that it can discover method references and constant references,
> but the ConstantPoolParser is missing two critical lines that cause it to
> throw an exception on any class file containing a constant long or constant
> double field. According to the
> [Javadoc|https://github.com/apache/maven-shared/blob/ca1f714442eb49439a1f184ba8177e7795158b75/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/asm/ConstantPoolParser.java#L34],
> the class was adapted from [this|http://stackoverflow.com/a/32278587/23691]
> stack overflow answer. If you look inside the switch statement at the cases
> for longs and doubles, it increments the index. But the ConstantPoolParser is
> [missing|https://github.com/apache/maven-shared/blob/ca1f714442eb49439a1f184ba8177e7795158b75/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/asm/ConstantPoolParser.java#L118-L123]
> this increment. This causes it to land
> [here|https://github.com/apache/maven-shared/blob/ca1f714442eb49439a1f184ba8177e7795158b75/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/asm/ConstantPoolParser.java#L95-L96]
> and throw an exception on all but the most trivial codebases. In
> [this|https://github.com/apache/maven-shared/pull/10] pull request I fixed
> the bug and updated one of the test classes to have a constant long field to
> prevent regressions.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)