Re: Concurrency issue while running Maven on Jenkins host

2019-05-14 Thread Francois MAROT
Sorry, seems my previous message missed the copy pasted content ! Here it is: pipeline { agent { node { label paramsMap.agentParam } }// the build will only run on nodes (ie slaves) indicated environment { // To prevent simultaneous job working in the same Mave

Maven adjusts transitive compile-scope dependency to test-scope

2019-05-14 Thread Simon Taddiken
Hi everyone, I've encountered the following behavior and I'm not quite sure whether it is desirable. In my project, I have declared a dependency *X* with scope *test*. I then updated the version of a 3rd party dependency *Y*. In its new version, *Y* suddenly requires the aforementioned dependency

Re: Maven adjusts transitive compile-scope dependency to test-scope

2019-05-14 Thread Jason Young
Did you declare that Y depends on X at all (via Y's pom.xml) or did it figure that out on its own (via transitive dependencies)? Test scope means it's for testing that one project, thus it's not transitive, e.g. I don't need JUnit for my tests just because SomeAwesomeProject uses JUnit for its tes

Re: Concurrency issue while running Maven on Jenkins host

2019-05-14 Thread Tibor Digana
There was one more email with the same problem. We are talking about this problem, global repo: '$COMPANY_JENKINS_HOME.m2/repository/executor_$EXECUTOR_NUMBER' Our build creates pwd() + "/.m2" in the job, and the scm checkouts git repo to "./build" directory. No issue then! The Jenkinsfile should

Re: Maven adjusts transitive compile-scope dependency to test-scope

2019-05-14 Thread Simon Taddiken
In my case, the pom of Y explicitly declares X with scope compile. The dependency tree should look something like this: MyProject <- this is a standalone application, that will not be depended on by s/o else |- X:test |- Y:compile \- X:compile So for MyProject, X is explicitly declared test bu

Re: Maven adjusts transitive compile-scope dependency to test-scope

2019-05-14 Thread Thomas Broyer
There might be a rule in the enforcer plugin (I haven't checked). If one really wanted to change the dependency scope, he could add an exclusion in the Y dependency to break the transitivity. Fwiw, whenever you change your dependencies, it's a good idea to run mvn dependency:tree and look at the o