Thats a good point Thomas, hadn't considered the lib/ case. I also am recommending what Thomas is suggesting as well.
On Thu, Oct 25, 2018 at 10:52 AM Maximilian Michels <m...@apache.org> wrote: > On 25.10.18 19:23, Lukasz Cwik wrote: > > > > > > On Thu, Oct 25, 2018 at 9:59 AM Maximilian Michels <m...@apache.org > > <mailto:m...@apache.org>> wrote: > > > > Question: How would a user end up with the same shaded dependency > > twice? > > The shaded dependencies are transitive dependencies of Beam and thus, > > this shouldn't happen. Is this a safe-guard when running different > > versions of Beam in the same JVM? > > > > > > What I was referring to was that they aren't exactly the same dependency > > but slightly different versions of the same dependency. Since we are > > planning to vendor each dependency and its transitive dependencies as > > part of the same jar, we can have vendor-A that contains shaded > > transitive-C 1.0 and vendor-B that contains transitive-C 2.0 both with > > different package prefixes. It can be that transitive-C 1.0 and > > transitive-C 2.0 can't be on the same classpath because they can't be > > perfectly shaded due to JNI, java reflection, magical property > > files/strings, ... > > > > Ah yes. Get it. Thanks! >