[
https://issues.apache.org/jira/browse/MSHARED-545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15413759#comment-15413759
]
Hudson commented on MSHARED-545:
--------------------------------
SUCCESS: Integrated in maven-shared #2810 (See
[https://builds.apache.org/job/maven-shared/2810/])
[MSHARED-545] maven-dependency-analyzer fails on classes containing constant
long or double
Submitted-by: Jonathan Haber <[email protected]>
This fixes #10 (michaelo: [http://svn.apache.org/viewvc/?view=rev&rev=1755616])
*
maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/asm/ConstantPoolParser.java
*
maven-dependency-analyzer/src/test/resources/java8methodRefs/src/main/java/inlinedStaticReference/Project.java
> 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.7
> 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)