{"action":"created","issue":{"url":"https://api.github.com/repos/siom79/japicmp/issues/92","labels_url":"https://api.github.com/repos/siom79/japicmp/issues/92/labels{/name}","comments_url":"https://api.github.com/repos/siom79/japicmp/issues/92/comments","events_url":"https://api.github.com/repos/siom79/japicmp/issues/92/events","html_url":"https://github.com/siom79/japicmp/issues/92","id":119688244,"number":92,"title":"japicmp-maven-plugin tries to download plugin dependencies even though skipPomModules is set to true","user":{"login":"rmetzger","id":89049,"avatar_url":"https://avatars.githubusercontent.com/u/89049?v=3","gravatar_id":"","url":"https://api.github.com/users/rmetzger","html_url":"https://github.com/rmetzger","followers_url":"https://api.github.com/users/rmetzger/followers","following_url":"https://api.github.com/users/rmetzger/following{/other_user}","gists_url":"https://api.github.com/users/rmetzger/gists{/gist_id}","starred_url":"https://api.github.com/users/rmetzger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rmetzger/subscriptions","organizations_url":"https://api.github.com/users/rmetzger/orgs","repos_url":"https://api.github.com/users/rmetzger/repos","events_url":"https://api.github.com/users/rmetzger/events{/privacy}","received_events_url":"https://api.github.com/users/rmetzger/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-12-01T10:31:41Z","updated_at":"2015-12-08T14:35:57Z","closed_at":null,"body":"I'm using `japicmp-maven-plugin` in a multi-module project. I've defined the plugin in the root pom.\r\n\r\nMy plugin definition includes a dependency to a module containing my interface annotations (I haven't found another way to make them available to all the other modules without introducing circular dependencies).\r\n\r\nThe problem is that the build is failing already with my parent pom because the annotations module is not available.\r\n\r\n```\r\n[INFO] --- maven-failsafe-plugin:2.18.1:integration-test (default) @ flink-parent ---\r\n[INFO] Tests are skipped.\r\n[INFO] \r\n[INFO] --- japicmp-maven-plugin:0.6.2-SNAPSHOT:cmp (default) @ flink-parent ---\r\nDownloading: https://oss.sonatype.org/content/repositories/snapshots/org/apache/flink/flink-annotations/1.0-SNAPSHOT/maven-metadata.xml\r\nDownloading: https://oss.sonatype.org/content/repositories/snapshots/org/apache/flink/flink-annotations/1.0-SNAPSHOT/flink-annotations-1.0-SNAPSHOT.jar\r\n[INFO] ------------------------------------------------------------------------\r\n[INFO] Reactor Summary:\r\n[INFO] \r\n[INFO] flink .............................................. FAILURE [  4.008 s]\r\n[INFO] flink-annotations .................................. SKIPPED\r\n[INFO] flink-shaded-hadoop ................................ SKIPPED\r\n[INFO] flink-shaded-hadoop2 ............................... SKIPPED\r\n[INFO] flink-shaded-include-yarn-tests .................... SKIPPED\r\n[INFO] flink-shaded-curator ............................... SKIPPED\r\n[INFO] flink-shaded-curator-recipes ....................... SKIPPED\r\n[INFO] flink-shaded-curator-test .......................... SKIPPED\r\n[INFO] flink-core ......................................... SKIPPED\r\n[INFO] flink-java ......................................... SKIPPED\r\n```\r\n\r\nCan we disable the plugin dependency resolution as well when the plugin execution is skipped?"},"comment":{"url":"https://api.github.com/repos/siom79/japicmp/issues/comments/162900520","html_url":"https://github.com/siom79/japicmp/issues/92#issuecomment-162900520","issue_url":"https://api.github.com/repos/siom79/japicmp/issues/92","id":162900520,"user":{"login":"siom79","id":3755956,"avatar_url":"https://avatars.githubusercontent.com/u/3755956?v=3","gravatar_id":"","url":"https://api.github.com/users/siom79","html_url":"https://github.com/siom79","followers_url":"https://api.github.com/users/siom79/followers","following_url":"https://api.github.com/users/siom79/following{/other_user}","gists_url":"https://api.github.com/users/siom79/gists{/gist_id}","starred_url":"https://api.github.com/users/siom79/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/siom79/subscriptions","organizations_url":"https://api.github.com/users/siom79/orgs","repos_url":"https://api.github.com/users/siom79/repos","events_url":"https://api.github.com/users/siom79/events{/privacy}","received_events_url":"https://api.github.com/users/siom79/received_events","type":"User","site_admin":false},"created_at":"2015-12-08T14:35:57Z","updated_at":"2015-12-08T14:35:57Z","body":"Yes, you are right. japicmp is doing exactly the same to evaluate annotations without the necessity that the annotation is available on the classpath (see for example [https://github.com/siom79/japicmp/blob/master/japicmp/src/main/java/japicmp/util/AnnotationHelper.java#L81](https://github.com/siom79/japicmp/blob/master/japicmp/src/main/java/japicmp/util/AnnotationHelper.java#L81)).\r\n\r\nThe `Class.forName()` call was a contribution to the project; but it requires the class to be on the classpath. I pulled the [change set](https://github.com/siom79/japicmp/pull/89) into the project without seeing that this will cause a problem. Yesterday evening I fixed the issue with a workaround, but it should be implemented in a way that does not require the annotation to be present on the classpath. "}}