Why not use the Manifest?

forax at univ-mlv.fr forax at univ-mlv.fr
Thu Oct 15 15:40:33 UTC 2015

----- Mail original -----
> De: "Peter Kriens" <peter.kriens at aqute.biz>
> À: forax at univ-mlv.fr
> Cc: "Mark Reinhold" <mark.reinhold at oracle.com>, jpms-spec-experts at openjdk.java.net
> Envoyé: Jeudi 15 Octobre 2015 16:53:26
> Objet: Re: Why not use the Manifest?
> > On 15 okt. 2015, at 16:26, forax at univ-mlv.fr wrote:
> > I assume that some developers will want to declare the module-info by
> > hand.
> Ok, but isn’t this then always redundant?
> Isn’t the build system forced to have the same (or at least closely
> corresponding) information with a version?

If your build tool is able to increment version automatically,
you don't really need versions.

Let's take an example, we have JUnit3 and JUnit4.
JUnit3 is backward compatible, JUnit4 is backward compatible,
JUnit3 is not compatible with JUnit4, that's obvious because they change the package prefix name.
In a module world, JUnit3 and JUnit4 will not have the same module name,
otherwise, using the most recent module implementation is fine
(if you have a tool that doesn't do any auto-update of the required modules).

There is one case where you need a version, when you want to blacklist a release because of a bug,
for that you will need to tell the build tool to avoid a peculiar module version.

Anyway, with this tool, the version is something that tag a module jar, not something the developer as to care of
(developers are bad at managing artifact version).


More information about the jpms-spec-experts mailing list