[
https://issues.apache.org/jira/browse/MDEP-679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17061283#comment-17061283
]
John Lin commented on MDEP-679:
-------------------------------
I've submitted a PR:
[https://github.com/apache/maven-dependency-analyzer/pull/7]
The root cause is that the component that parses references in classes treat
string literals as class/method names. It happens that there is a class called
"update.class" in dnsjava-2.1.9.jar, without any package prefix. Therefore,
maven-dependency-analyzer would think my app uses dnsjava as a direct
dependency.
My fix to this issue is to exclude string literals when parsing the references.
> mvn dependency:analyze detected wrong transitive dependency
> -----------------------------------------------------------
>
> Key: MDEP-679
> URL: https://issues.apache.org/jira/browse/MDEP-679
> Project: Maven Dependency Plugin
> Issue Type: Bug
> Components: analyze
> Affects Versions: 3.1.1
> Reporter: John Lin
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> To illustrate this issue, I created a sample project here:
> [https://github.com/johnlinp/misc-demo/tree/master/maven-dependency-analyze-dnsjava]
> The dependency tree is like this:
> {code:java}
> My app ---> ApacheJMeter_http ---> dnsjava
> {code}
> I didn't use any code directly from the artifact {{dnsjava}} in my app. I
> only used {{ApacheJMeter_http}}. However, the command {{mvn
> dependency:analyze}} will report a used undeclared dependency: {{dnsjava}}.
> {code:java}
> [INFO] --- maven-dependency-plugin:3.1.1:analyze (default-cli) @
> maven-dependency-analyze-dnsjava ---
> [WARNING] Used undeclared dependencies found:
> [WARNING] dnsjava:dnsjava:jar:2.1.9:runtime {code}
> It seems that the problem came from the line:
> {code:java}
> map.put("update", null);
> {code}
> If I change it into {{map.put("create", null);}} or even {{map.put("UPDATE",
> null);}}, the problem will disappear. Therefore, I think there might be
> something to do with the string "update".
> Note that this issue is not reproducible in maven-dependency-plugin:2.8.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)