-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Hi!
There have been a number of threads regarding loading multiple versions of the same module. The requirements say: "It is not necessary to support more than one version of a module within a single configuration."[1] The threads hence usually end like this: "The module system isn't suggesting any solutions, it is instead leaving this problem to the build tools and containers."[2] I can see how we can use class loaders (and now layers) to load multiple versions at runtime. This is essentially what containers do. Now I wonder, is there anything a build tool (or a dedicated developer for that matter) can do to launch the JVM with multiple versions of the same module? Running Example: App requires LibA App requires LibB version 2 LibA requires LibB version 1 One way I hoped to do this was to treat both versions as two different modules, i.e. renaming them and update the dependencies on them. App requires LibA App requires LibB_v2 LibA requires LibB_v1 This does not work because both modules would export the same packages. That's a little disappointing - I hoped it wouldn't matter because no module is reading from both versions. Since this failed I see no way to solve this aspect of JAR hell without containers. Does anybody else seen one? so long ... Nicolai [1] http://openjdk.java.net/projects/jigsaw/spec/reqs/#multiple-versions [2] http://mail.openjdk.java.net/pipermail/jigsaw-dev/2015-October/004787.ht ml - -- PGP Key: http://keys.gnupg.net/pks/lookup?op=vindex&search=0xCA3BAD2E9CCCD509 Web: http://codefx.org a blog about software development http://do-foss.de Free and Open Source Software for the City of Dortmund Twitter: https://twitter.com/nipafx Diaspora: n...@pod.geraspora.de -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJWJkIPAAoJEMo7rS6czNUJKqcP/jCPBM5bhYbLg1iM04CshfKc 5Ers7HvrnxEvES9wVEFkM2MMCieNwZfK5FCuKUWoM3nwxjbU4rgG6tzRwxfUphky mMIcfUaqUPzBBaA/rtdk7NVhwMv4fK45eaylL/1LpH0xgSbBgTN4FnqMRKiLuKNJ yPZAbXHwhAGjDIEUjdxcenmS494CJHNcI2QgR1onC2kEBZe0r+rH48WQwncMq9dy WKetJi8U5uCUpBGAs+7Qi6GbAMIY03t4Vlb5+13hgvjkvX9bY6T47Ey1wC85Lx+X OzTrktnJxzaQQNeqsLcYfvLRW9kEWj+N178He7+IWffBVDZCwdEeErZUWrbAwHKe 2o6iFYxtDoU/NzviniL+kUPcmi4dUsO/953HhCAjIET2DJRh2Jr3DrJ+eoVvdKZD 0EkCaO1tpo4QJXiu3aM1f1qFbZj6QaYb2YQSqsUllc+9n4nzDCH2QS69Y9Q5dO3s Gu7pfsAGBLUESyIWaVhiIQQ5jxsoTUvSbG5dn/NfGO10qeewmBdOpuvCJPptr9UP 5l/aCUz6PL6PRPN2B/iPkc6I1jkq3lAzd+FtvKZ6CI4RAfKMOKBkrQ7jiLz3SAVY 2jV6vAizHQBF8UPpA+HJOgUue9WNJrLPD7LpeOpmlamwaRSRIiE5j2goFMAp2QC5 4AybhvOsjbM65c/CmWpV =XAwk -----END PGP SIGNATURE-----