Hi Gunnar,
A question for you about Hibernate accessing non-exported types, in
connection with your fascinating blog entry
http://in.relation.to/2016/06/17/bean-validation-and-the-jigsaw-liaison/
The user module com.example.acme 'provides' a secret implementation of
javax.validation.ConstraintValidator. The RI module
org.hibernate.validator.engine 'uses' ConstraintValidator. Great --
until code in the RI module tries to instantiate the secret
implementation class directly, and gets an IAE. Why isn't the RI module
letting ServiceLoader instantiate custom constraint validators on its
behalf?
(Earlier, the API module javax.validation was happy to have
ServiceLoader instantiate validation providers on its behalf.)
Alex
On 6/15/2016 3:24 AM, Gunnar Morling wrote:
Hi,
When referring to a not-exported type from another module, I'm getting this
rather generic compilation error:
package someprivate.pakkage does not exist
import someprivate.pakkage.SomeType;
^
error: cannot find symbol SomeType
As if the type was not existing at all. As per this blog post [1], a more
specific error used to be raised in previous EA builds:
error: SomeType is not visible because
package someprivate.pakkage is not visible
I found that previous error more helpful, as it gives an indication of what
to do in order to prevent it. Has this been changed intentionally? Or am I
doing something wrong here?
Thanks,
--Gunnar
[1]
https://blog.codecentric.de/en/2015/11/first-steps-with-java9-jigsaw-part-1/