[ https://jira.codehaus.org/browse/MDEP-124?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=276777#comment-276777 ]
Christoph Kutzinski commented on MDEP-124: ------------------------------------------ I'm seeing the problem with an annotation with RetentionPolicy.SOURCE, too. I know this would mean probably a lot of work, but the way to fix it IMHO would be to process the sourcecode, too. Otherwise what the dependency:analyze goal promises to do (finding unused, declared compile-time (!) dependencies), is severely broken. > Dependency incorrectly reported as "Unused declared" > ---------------------------------------------------- > > Key: MDEP-124 > URL: https://jira.codehaus.org/browse/MDEP-124 > Project: Maven 2.x Dependency Plugin > Issue Type: Bug > Components: analyze > Reporter: Olivier Dehon > Assignee: Brian Fox > Fix For: 2.4 > > > When a dependency is only required for a constant in a JAR, > dependency:analyze incorrectly reports the dependency as "Unused declared". > Example: > Constants.jar has 1 class called Constants.java: > {code} > package com.myco.util; > public class Constants > { > private Constants() {}; > public static final double PI = 3.14159; > } > {code} > Then App jar has App.java as: > {code} > package com.myco.app; > public class App > { > public static void main( String[] args ) > { > System.out.println( com.myco.util.Constants.PI ); > } > } > {code} > Since the constant gets optimized away in the generated {{App.class}}, the > dependency is not detected, even though the project won't compile without it. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira