[ 
https://issues.apache.org/jira/browse/MDEP-516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15491423#comment-15491423
 ] 

Petar Tahchiev commented on MDEP-516:
-------------------------------------

Hi Robert,

I tried replacing the {{requiresDependencyResolution = ResolutionScope.TEST}} 
with {{requiresDependencyCollection = ResolutionScope.TEST}} in 
maven-dependency-plugin, and then I tried to run:

{code}
mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.0-SNAPSHOT:go-offline 
org.apache.maven.plugins:maven-dependency-plugin:3.0.0-SNAPSHOresolve-plugins
{code}

which finished with SUCCESS. But then I try to build the project with {{-o}} 
and the build fails because it cannot find:
{code}
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
            <optional>true</optional>
        </dependency>
{code}
anyways I run it without {{-o}} and then I see it starts downloading tons of 
dependencies for maven plugins that I have declared:

{code}
[INFO] --- maven-site-plugin:3.5.1:attach-descriptor (attach-descriptor) @ 
platform ---
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/asciidoctor/asciidoctor-maven-plugin/1.5.3/asciidoctor-maven-plugin-1.5.3.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/asciidoctor/asciidoctor-maven-plugin/1.5.3/asciidoctor-maven-plugin-1.5.3.pom
 (18 KB at 60.0 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-complete/1.7.23/jruby-complete-1.7.23.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-complete/1.7.23/jruby-complete-1.7.23.pom
 (9 KB at 39.6 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-artifacts/1.7.23/jruby-artifacts-1.7.23.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-artifacts/1.7.23/jruby-artifacts-1.7.23.pom
 (4 KB at 16.9 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-parent/1.7.23/jruby-parent-1.7.23.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-parent/1.7.23/jruby-parent-1.7.23.pom
 (24 KB at 126.5 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/asciidoctor/asciidoctorj/1.5.3.2/asciidoctorj-1.5.3.2.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/asciidoctor/asciidoctorj/1.5.3.2/asciidoctorj-1.5.3.2.pom
 (3 KB at 13.2 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-complete/1.7.21/jruby-complete-1.7.21.pom
Downloaded: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-complete/1.7.21/jruby-complete-1.7.21.pom
 (9 KB at 33.2 KB/sec)
Downloading: 
https://repository.nemesis.io/artifactory/libs-release/org/jruby/jruby-artifacts/1.7.21/jruby-artifacts-1.7.21.pom
{code}

So I tried specifying all the plugins in my command:
{code}
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.0-SNAPSHOT:go-offline 
org.apache.maven.plugins:maven-dependency-plugin:3.0.0-SNAPSHOT:resolve-plugins 
proguard:proguard site:attach-descriptor
{code}

but then surefire failed:
{code}
[ERROR] ----------
[ERROR] 1) org.apache.maven.surefire:surefire-junit47:jar:2.19
[ERROR] 
[ERROR] Try downloading the file manually from the project website.
[ERROR] 
[ERROR] Then, install it using the command:
[ERROR] mvn install:install-file -DgroupId=org.apache.maven.surefire 
-DartifactId=surefire-junit47 -Dversion=2.19 -Dpackaging=jar 
-Dfile=/path/to/file
[ERROR] 
[ERROR] Alternatively, if you host your own repository you can deploy the file 
there:
[ERROR] mvn deploy:deploy-file -DgroupId=org.apache.maven.surefire 
-DartifactId=surefire-junit47 -Dversion=2.19 -Dpackaging=jar 
-Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
[ERROR] 
[ERROR] Path to dependency:
[ERROR] 1) dummy:dummy:jar:1.0
[ERROR] 2) org.apache.maven.surefire:surefire-junit47:jar:2.19
{code}

Do I really need to specify all the plugins when I say {{go-offline}}? Because 
that actually defeats the purpose of it - in CircleCI you need to specify a 
command that will be executed after they restore local repository from cache. 
If I specify, surefire:test, failsafe:test, generate a site, proguard, etc to 
download all dependencies then I'm actually building the project, before I get 
to the command that builds the project.

> Go-offline does not find module dependencies in multi-module build.
> -------------------------------------------------------------------
>
>                 Key: MDEP-516
>                 URL: https://issues.apache.org/jira/browse/MDEP-516
>             Project: Maven Dependency Plugin
>          Issue Type: Bug
>          Components: go-offline
>    Affects Versions: 2.10
>            Reporter: Petar Tahchiev
>
> Hello,
> I've recently hit the exact same problem that these guys are having:
> http://stackoverflow.com/questions/14694139/how-to-resolve-dependencies-between-modules-within-multi-module-project
> and I thought it must be a very normal scenario so probably a lot of other 
> people are hitting.
> So basically I have a multi-module build where {{moduleA}} is built first and 
> them {{moduleB}} depends on {{moduleA}}. However when I do {{mvn 
> dependency:go-offline}} it comes to resolve the dependencies of {{moduleB}} 
> and it fails with {{Artifact not found: moduleA}}. 
> That seems to happen because only modules that have been packaged are put in 
> the reactor and so later modules will know about them. So to fix it I have to 
> do the following:
> {code}
> mvn package dependency:go-offline -U -Pquick,test -DskipTests -s 
> src/main/resources/settings.xml
> {code}
> which I really don't like, because it does an extra package that I don't 
> need, and then the whole build gets a lot slower.
> of course, {{mvn install}} at any time fixes the issue also, but I don't want 
> to install



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to