Producing java8 and java7 versions

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Producing java8 and java7 versions

Christofer Dutz
Hi,

Currently the Edgent project produces two tar.gz files … one for java7 and one for java8. Now they would like to produce artifacts for Maven-Central.

I’m currently trying to help them with their build by migrating this to maven. I think that there currently is no clean way to provide both java7 and java8 versions. We could add classifiers, but that would mess up the dependency resolution mechanism.

Do you guys know how other projects do this sort of thing?

Chris
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Maxim Solodovnik
Hello Chris,

Here is one example:
https://repo1.maven.org/maven2/org/postgresql/postgresql/

WBR, Maxim
(from mobile, sorry for the typos)

On Jun 8, 2017 10:44, "Christofer Dutz" <[hidden email]> wrote:

> Hi,
>
> Currently the Edgent project produces two tar.gz files … one for java7 and
> one for java8. Now they would like to produce artifacts for Maven-Central.
>
> I’m currently trying to help them with their build by migrating this to
> maven. I think that there currently is no clean way to provide both java7
> and java8 versions. We could add classifiers, but that would mess up the
> dependency resolution mechanism.
>
> Do you guys know how other projects do this sort of thing?
>
> Chris
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Christofer Dutz
So, they are adding the java version as a suffix to the version of the artifact … don’t quite know if I really like that solution. I think It would break some version related automatisms, but it is definitely a safer solution as the classifier solution. But how would such a build look like? Using version properties everywhere except the pom type artifacts which are used as parents by the leaf artifacts? That could work, but would it break anything with the release-plugin?

Chris


Am 08.06.17, 11:04 schrieb "Maxim Solodovnik" <[hidden email]>:

    Hello Chris,
   
    Here is one example:
    https://repo1.maven.org/maven2/org/postgresql/postgresql/
   
    WBR, Maxim
    (from mobile, sorry for the typos)
   
    On Jun 8, 2017 10:44, "Christofer Dutz" <[hidden email]> wrote:
   
    > Hi,
    >
    > Currently the Edgent project produces two tar.gz files … one for java7 and
    > one for java8. Now they would like to produce artifacts for Maven-Central.
    >
    > I’m currently trying to help them with their build by migrating this to
    > maven. I think that there currently is no clean way to provide both java7
    > and java8 versions. We could add classifiers, but that would mess up the
    > dependency resolution mechanism.
    >
    > Do you guys know how other projects do this sort of thing?
    >
    > Chris
    >
   


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Christofer Dutz
Perhaps not adding any suffix to the version for the java8 version would be ok and to add “java7” to the version for the legacy builds would be a good compromise.

Chris

Am 08.06.17, 11:11 schrieb "Christofer Dutz" <[hidden email]>:

    So, they are adding the java version as a suffix to the version of the artifact … don’t quite know if I really like that solution. I think It would break some version related automatisms, but it is definitely a safer solution as the classifier solution. But how would such a build look like? Using version properties everywhere except the pom type artifacts which are used as parents by the leaf artifacts? That could work, but would it break anything with the release-plugin?
   
    Chris
   
   
    Am 08.06.17, 11:04 schrieb "Maxim Solodovnik" <[hidden email]>:
   
        Hello Chris,
       
        Here is one example:
        https://repo1.maven.org/maven2/org/postgresql/postgresql/
       
        WBR, Maxim
        (from mobile, sorry for the typos)
       
        On Jun 8, 2017 10:44, "Christofer Dutz" <[hidden email]> wrote:
       
        > Hi,
        >
        > Currently the Edgent project produces two tar.gz files … one for java7 and
        > one for java8. Now they would like to produce artifacts for Maven-Central.
        >
        > I’m currently trying to help them with their build by migrating this to
        > maven. I think that there currently is no clean way to provide both java7
        > and java8 versions. We could add classifiers, but that would mess up the
        > dependency resolution mechanism.
        >
        > Do you guys know how other projects do this sort of thing?
        >
        > Chris
        >
       
   
   
    ---------------------------------------------------------------------
    To unsubscribe, e-mail: [hidden email]
    For additional commands, e-mail: [hidden email]
   


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Maxim Solodovnik
In reply to this post by Christofer Dutz
I don't have computer right now, so I can't check
I believe you can check pom in their repo or ask their mailing list :)

Additional option might me: having version X.a.b.c for java7 and version
Y.a.b.c for java8

Apache Wicket uses such naming ...

WBR, Maxim
(from mobile, sorry for the typos)

On Jun 8, 2017 11:11, "Christofer Dutz" <[hidden email]> wrote:

> So, they are adding the java version as a suffix to the version of the
> artifact … don’t quite know if I really like that solution. I think It
> would break some version related automatisms, but it is definitely a safer
> solution as the classifier solution. But how would such a build look like?
> Using version properties everywhere except the pom type artifacts which are
> used as parents by the leaf artifacts? That could work, but would it break
> anything with the release-plugin?
>
> Chris
>
>
> Am 08.06.17, 11:04 schrieb "Maxim Solodovnik" <[hidden email]>:
>
>     Hello Chris,
>
>     Here is one example:
>     https://repo1.maven.org/maven2/org/postgresql/postgresql/
>
>     WBR, Maxim
>     (from mobile, sorry for the typos)
>
>     On Jun 8, 2017 10:44, "Christofer Dutz" <[hidden email]>
> wrote:
>
>     > Hi,
>     >
>     > Currently the Edgent project produces two tar.gz files … one for
> java7 and
>     > one for java8. Now they would like to produce artifacts for
> Maven-Central.
>     >
>     > I’m currently trying to help them with their build by migrating this
> to
>     > maven. I think that there currently is no clean way to provide both
> java7
>     > and java8 versions. We could add classifiers, but that would mess up
> the
>     > dependency resolution mechanism.
>     >
>     > Do you guys know how other projects do this sort of thing?
>     >
>     > Chris
>     >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Jörg Schaible
In reply to this post by Christofer Dutz
Hi Chistopher,

Christofer Dutz wrote:

> Perhaps not adding any suffix to the version for the java8 version would
> be ok and to add “java7” to the version for the legacy builds would be a
> good compromise.

That's what XStream has done with the last release.

Cheers,
Jörg


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Christofer Dutz
Hi Jörg,

We have been discussing this option on the Edgent list and I guess this is the way it’s gonna be.

Thanks for your feedback.

Chris



Am 08.06.17, 20:06 schrieb "Jörg Schaible" <[hidden email]>:

    Hi Chistopher,
   
    Christofer Dutz wrote:
   
    > Perhaps not adding any suffix to the version for the java8 version would
    > be ok and to add “java7” to the version for the legacy builds would be a
    > good compromise.
   
    That's what XStream has done with the last release.
   
    Cheers,
    Jörg
   
   
    ---------------------------------------------------------------------
    To unsubscribe, e-mail: [hidden email]
    For additional commands, e-mail: [hidden email]
   
   


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Paul Hammant
In reply to this post by Jörg Schaible
Older releases tried to have a single jar that had adaptive bytecode
within, right Jörg

Specifically, class file formats 49, 50, 51 in one Jar.

- Paul

On Thu, Jun 8, 2017 at 2:06 PM, Jörg Schaible <[hidden email]> wrote:

> Hi Chistopher,
>
> Christofer Dutz wrote:
>
> > Perhaps not adding any suffix to the version for the java8 version would
> > be ok and to add “java7” to the version for the legacy builds would be a
> > good compromise.
>
> That's what XStream has done with the last release.
>
> Cheers,
> Jörg
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Jörg Schaible-5
Hi Paul,

Paul Hammant wrote:

> Older releases tried to have a single jar that had adaptive bytecode
> within, right Jörg
>
> Specifically, class file formats 49, 50, 51 in one Jar.

This is still the case. The -java7 version just omits class files targetting
Java 8, because in some environments they cause harm if the runtime is not
yet Java 8 compatible (Android, app servers scanning jars for annotations
...).

Cheers,
Jörg



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Laurent Perez
On a side note, in a few months, if you like to live dangerously, java9
comes with built-in support for multijar :
http://in.relation.to/2017/02/13/building-multi-release-jars-with-maven/

laurent


2017-06-09 14:07 GMT+02:00 Jörg Schaible <[hidden email]>:

> Hi Paul,
>
> Paul Hammant wrote:
>
> > Older releases tried to have a single jar that had adaptive bytecode
> > within, right Jörg
> >
> > Specifically, class file formats 49, 50, 51 in one Jar.
>
> This is still the case. The -java7 version just omits class files
> targetting
> Java 8, because in some environments they cause harm if the runtime is not
> yet Java 8 compatible (Android, app servers scanning jars for annotations
> ...).
>
> Cheers,
> Jörg
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>


--
<a href="http://blog.jdeuxe.info/">http://blog.jdeuxe.info/ - Java
entreprise tips & tricks</a>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Producing java8 and java7 versions

Christofer Dutz
Hi Laurent,

I love bleeding edge stuff, but I don’t like SM stuff … guess java 9 multi-jars sound more SM than bleeding edge for me.

Guess it would not be good to base the build of an Apache project on that ;-)

Chris

Am 10.06.17, 09:31 schrieb "Laurent Perez" <[hidden email]>:

    On a side note, in a few months, if you like to live dangerously, java9
    comes with built-in support for multijar :
    http://in.relation.to/2017/02/13/building-multi-release-jars-with-maven/
   
    laurent
   
   
    2017-06-09 14:07 GMT+02:00 Jörg Schaible <[hidden email]>:
   
    > Hi Paul,
    >
    > Paul Hammant wrote:
    >
    > > Older releases tried to have a single jar that had adaptive bytecode
    > > within, right Jörg
    > >
    > > Specifically, class file formats 49, 50, 51 in one Jar.
    >
    > This is still the case. The -java7 version just omits class files
    > targetting
    > Java 8, because in some environments they cause harm if the runtime is not
    > yet Java 8 compatible (Android, app servers scanning jars for annotations
    > ...).
    >
    > Cheers,
    > Jörg
    >
    >
    >
    > ---------------------------------------------------------------------
    > To unsubscribe, e-mail: [hidden email]
    > For additional commands, e-mail: [hidden email]
    >
    >
   
   
    --
    <a href="http://blog.jdeuxe.info/">http://blog.jdeuxe.info/ - Java
    entreprise tips & tricks</a>
   


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]
Loading...