Hi, On Fri, Nov 6, 2015 at 11:42 PM, Alan Bateman <alan.bate...@oracle.com> wrote:
> > > On 06/11/2015 19:18, Ali Ebrahimi wrote: > >> >> > Right, I think you are running into issue again where the two versions of > com.bar have equal ModuleDescriptors. When you create modular JAR then I'm > guessing you add a module version and this makes them non-equal. > > For the exploded module case then you could changing one of them to > "export com.bar.extra" to make them non-equal. This is just temporary until > we get the API changed as I mentioned in some of the other mails. Is not better we allow compiler support for module version in module descriptor? > > >> Also, if you remove com.bar from root module list for cfg2 final result >> will change: >> >> Configuration cfg2 = Configuration >> .resolve(finder2, layer1,ModuleFinder.empty(),"com.foo") >> .bind(); >> >> So all of this can not cause hard to find bugs in user applications. >> >> Yes, nobody requires com.bar in the configuration for layer2 and so > com.bar@2 is ignored. But don't you think with special handing of implied readability all of this occurs and maybe some non-discovered ones. May be user or IDE think adding 'requires com.bar' to com.foo is redundant and removed. -- Best Regards, Ali Ebrahimi