You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-dev@hadoop.apache.org by Tsuyoshi Ozawa <oz...@apache.org> on 2015/06/09 21:17:24 UTC

[DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Hi,

Recently, I've tackled with dependency problems about Guava, Jetty,
and Jersey. Essentially, it's similar to "DLL hell".

I've seen that Google Guice uses jarjar-maven-plugin to avoid
classpath conflicts between user-side dependency and library-side
dependency.

http://sonatype.github.io/jarjar-maven-plugin/

It looks good to me, but it can break backward compatibility about
classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
on? I believe it reduces efforts to keep compatibility about
dependencies once it's introduced. What do you think?

Thanks,
- Tsuyoshi

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Tsuyoshi Ozawa <oz...@apache.org>.
Hi Andrew,

I haven't noticed that HADOOP-11656 covers renaming and repackaging
libraries. I'll check it.

Thanks,
- Tsuyoshi

On Tue, Jun 9, 2015 at 2:05 PM, Andrew Wang <an...@cloudera.com> wrote:
> Hi Tsuyoshi,
>
> I think Sean is already working on something similar at HADOOP-11656 with
> shading the hadoop client. Have you reviewed his proposal?
>
> Best,
> Andrew
>
> On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:
>
>> Hi,
>>
>> Recently, I've tackled with dependency problems about Guava, Jetty,
>> and Jersey. Essentially, it's similar to "DLL hell".
>>
>> I've seen that Google Guice uses jarjar-maven-plugin to avoid
>> classpath conflicts between user-side dependency and library-side
>> dependency.
>>
>> http://sonatype.github.io/jarjar-maven-plugin/
>>
>> It looks good to me, but it can break backward compatibility about
>> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
>> on? I believe it reduces efforts to keep compatibility about
>> dependencies once it's introduced. What do you think?
>>
>> Thanks,
>> - Tsuyoshi
>>

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Tsuyoshi Ozawa <oz...@apache.org>.
Hi Andrew,

I haven't noticed that HADOOP-11656 covers renaming and repackaging
libraries. I'll check it.

Thanks,
- Tsuyoshi

On Tue, Jun 9, 2015 at 2:05 PM, Andrew Wang <an...@cloudera.com> wrote:
> Hi Tsuyoshi,
>
> I think Sean is already working on something similar at HADOOP-11656 with
> shading the hadoop client. Have you reviewed his proposal?
>
> Best,
> Andrew
>
> On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:
>
>> Hi,
>>
>> Recently, I've tackled with dependency problems about Guava, Jetty,
>> and Jersey. Essentially, it's similar to "DLL hell".
>>
>> I've seen that Google Guice uses jarjar-maven-plugin to avoid
>> classpath conflicts between user-side dependency and library-side
>> dependency.
>>
>> http://sonatype.github.io/jarjar-maven-plugin/
>>
>> It looks good to me, but it can break backward compatibility about
>> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
>> on? I believe it reduces efforts to keep compatibility about
>> dependencies once it's introduced. What do you think?
>>
>> Thanks,
>> - Tsuyoshi
>>

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Tsuyoshi Ozawa <oz...@apache.org>.
Hi Andrew,

I haven't noticed that HADOOP-11656 covers renaming and repackaging
libraries. I'll check it.

Thanks,
- Tsuyoshi

On Tue, Jun 9, 2015 at 2:05 PM, Andrew Wang <an...@cloudera.com> wrote:
> Hi Tsuyoshi,
>
> I think Sean is already working on something similar at HADOOP-11656 with
> shading the hadoop client. Have you reviewed his proposal?
>
> Best,
> Andrew
>
> On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:
>
>> Hi,
>>
>> Recently, I've tackled with dependency problems about Guava, Jetty,
>> and Jersey. Essentially, it's similar to "DLL hell".
>>
>> I've seen that Google Guice uses jarjar-maven-plugin to avoid
>> classpath conflicts between user-side dependency and library-side
>> dependency.
>>
>> http://sonatype.github.io/jarjar-maven-plugin/
>>
>> It looks good to me, but it can break backward compatibility about
>> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
>> on? I believe it reduces efforts to keep compatibility about
>> dependencies once it's introduced. What do you think?
>>
>> Thanks,
>> - Tsuyoshi
>>

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Andrew Wang <an...@cloudera.com>.
Hi Tsuyoshi,

I think Sean is already working on something similar at HADOOP-11656 with
shading the hadoop client. Have you reviewed his proposal?

Best,
Andrew

On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:

> Hi,
>
> Recently, I've tackled with dependency problems about Guava, Jetty,
> and Jersey. Essentially, it's similar to "DLL hell".
>
> I've seen that Google Guice uses jarjar-maven-plugin to avoid
> classpath conflicts between user-side dependency and library-side
> dependency.
>
> http://sonatype.github.io/jarjar-maven-plugin/
>
> It looks good to me, but it can break backward compatibility about
> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
> on? I believe it reduces efforts to keep compatibility about
> dependencies once it's introduced. What do you think?
>
> Thanks,
> - Tsuyoshi
>

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Andrew Wang <an...@cloudera.com>.
Hi Tsuyoshi,

I think Sean is already working on something similar at HADOOP-11656 with
shading the hadoop client. Have you reviewed his proposal?

Best,
Andrew

On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:

> Hi,
>
> Recently, I've tackled with dependency problems about Guava, Jetty,
> and Jersey. Essentially, it's similar to "DLL hell".
>
> I've seen that Google Guice uses jarjar-maven-plugin to avoid
> classpath conflicts between user-side dependency and library-side
> dependency.
>
> http://sonatype.github.io/jarjar-maven-plugin/
>
> It looks good to me, but it can break backward compatibility about
> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
> on? I believe it reduces efforts to keep compatibility about
> dependencies once it's introduced. What do you think?
>
> Thanks,
> - Tsuyoshi
>

Re: [DISCUSS] Using maven-jarjar-plugin for avoiding classpath conflicts

Posted by Andrew Wang <an...@cloudera.com>.
Hi Tsuyoshi,

I think Sean is already working on something similar at HADOOP-11656 with
shading the hadoop client. Have you reviewed his proposal?

Best,
Andrew

On Tue, Jun 9, 2015 at 12:17 PM, Tsuyoshi Ozawa <oz...@apache.org> wrote:

> Hi,
>
> Recently, I've tackled with dependency problems about Guava, Jetty,
> and Jersey. Essentially, it's similar to "DLL hell".
>
> I've seen that Google Guice uses jarjar-maven-plugin to avoid
> classpath conflicts between user-side dependency and library-side
> dependency.
>
> http://sonatype.github.io/jarjar-maven-plugin/
>
> It looks good to me, but it can break backward compatibility about
> classpath. Can we use this plugin against Guava, Jetty, Jersey, and so
> on? I believe it reduces efforts to keep compatibility about
> dependencies once it's introduced. What do you think?
>
> Thanks,
> - Tsuyoshi
>