fabric8io/fabric8 — pull request #1338 by hekonsek (2014-05-09 17:21:37+00:00)
Title: [Process manager] Provided dependencies shouldn't be copied.

Hi @jstrachan,

We shouldn't install transitive dependencies with `provided` scope. Provided dependencies should be specified using `InstallOptions#optionalDependencyPatterns`.

Many projects include `provided` dependencies instead of `optional`. That results in fabric8 process manager installing a hell lots of conflicting jars. For example Spring Data comes with all the versions of the JPA API defined in the POM with `provided` scope. Depending on what is eventually found in classpath, Spring Data behaves differently. Currently our process manager will install of these `provided` JPA API jar, what is a total disaster for the executed application :) .

As `provided` dependencies should be explicitly deployed by users, we should let folks to do it via the `InstallOptions#optionalDependencyPatterns`.

Cheers.