Configuration.resolveRequires want providers of services to be in an exported package

Remi Forax forax at univ-mlv.fr
Sat Nov 19 14:34:25 UTC 2016


Hi all, hi Alan,

With 9-ea+144-jigsaw-nightly-h5735-20161117,
it seems that Configuration.resolveRequires() do more checks than necessary,
it checks that each provider of a service has its package exported, something which is not required by the spec.
Maybe i'm wrong, but it should just check that the provider is in a package of the module, it seems that the error message agree :).

cheers,
Rémi

Exception in thread "main" java.lang.module.ResolutionException: Provider com.github.forax.pro.main.JSONRunner not in module com.github.forax.pro.main
	at java.base/java.lang.module.Resolver.fail(Resolver.java:828)
	at java.base/java.lang.module.Resolver.checkExportSuppliers(Resolver.java:731)
	at java.base/java.lang.module.Resolver.finish(Resolver.java:286)
	at java.base/java.lang.module.Configuration.<init>(Configuration.java:200)
	at java.base/java.lang.module.Configuration.resolveRequires(Configuration.java:412)
	at com.github.forax.pro.plugin.compiler/com.github.forax.pro.plugin.compiler.CompilerPlugin.execute(CompilerPlugin.java:94)
	at com.github.forax.pro/com.github.forax.pro.Pro.lambda$run$12(Pro.java:208)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:430)
	at com.github.forax.pro/com.github.forax.pro.Pro.run(Pro.java:206)
	at simpletest/com.github.forax.pro.test.Programmatic.main(Programmatic.java:64)


More information about the jigsaw-dev mailing list