java.lang.IllegalStateException: невозможно загрузить элемент кэша - PullRequest
0 голосов
/ 31 мая 2019

Вышеуказанное исключение выдается из модульного теста, когда я добавляю модульность Java в свой проект.Я не могу найти решение для этого исключения.

Я добавил в MAVEN_OPTS

--add-opens java.base/java.lang=ALL-UNNAMED

И то же самое в конфигурации плагина surefire (безрезультатно), потому что следующее является частьюthe stacktrace:

throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to module com.google.guice

Мой проект представляет собой мультипроект maven с двумя модулями:

module org.veary.debs.api {
    exports org.veary.debs.api;
    exports org.veary.debs.api.model;
    exports org.veary.debs.api.dao;
}

module org.veary.debs.db {
    exports org.veary.debs.db;

    requires com.google.guice;
    requires com.google.guice.extensions.persist;
    requires java.persistence;
    requires javax.inject;
    requires org.veary.debs.api;
}

Вот фрагмент первой части трассировки стека.Мы будем благодарны за любую помощь.

ИНФОРМАЦИЯ: Об исключении было обнаружено и сообщено.Сообщение: java.lang.reflect.InaccessibleObjectException: Невозможно сделать защищенный финальный выброс java.lang.Class java.lang.ClassLoader.defineClass (java.lang.String, te [], int, int, java.security.ProtectionDomain)java.lang.ClassFormatError доступно: модуль java.base не «открывает java.lang» для модуля com.google.guice java.lang.IllegalStateException: невозможно загрузить элемент кэша на com.google.guice@4.2.2/com.google.inject.internal.cglib.core.internal. $ LoadingCache.createEntry (LoadingCache.java:79) по адресу com.google.guice@4.2.2/com.google.inject.internal.cglib.core.internal.$LoadingCache.get (LoadingCache.java:34) на com.google.guice@4.2.2/com.google.inject.internal.cglib.core.$AbstractClassGenerator$ClassLoaderData.get (AbstractClassGenerator.java:116) на странице com.google.guice@4.2.2/com.google.inject.internal.cglib.core.$AbstractClassGenerator.create (AbstractClassGenerator.java:291) по адресу com.google.guice@4.2.2/com.google.inject.internal.cglib.отражать. $ FastClass $ Generator.create (FastClass.java:65) вm.google.guice@4.2.2/com.google.inject.internal.BytecodeGen.newFastClassForMember (BytecodeGen.java:258) на com.google.guice@4.2.2/com.google.inject.internal.BytecodeGen.newFastClassForMember(BytecodeGen.java:207) на com.google.guice@4.2.2/com.google.inject.internal.ProviderMethod.create (ProviderMethod.java:69) на com.google.guice@4.2.2/com.google..inject.internal.ProviderMethodsModule.createProviderMethod (ProviderMethodsModule.java:272) по адресу com.google.guice@4.2.2/com.google.inject.internal.ProviderMethodsModule.getProviderMethods (ProviderMethods.gice) at6).@ 4.2.2 / com.google.inject.internal.ProviderMethodsModule.configure (ProviderMethodsModule.java:100) по адресу com.google.guice@4.2.2/com.google.inject.spi.Elements$RecordingBinder.install (Elements.java: 344) на com.google.guice@4.2.2/com.google.inject.spi.Elements$RecordingBinder.install (Elements.java:353) на com.google.guice@4.2.2/com.google.inject.spi.Elements.getElements (Elements.java:103) по адресу com.google.guice@4.2.2/com.google.inject.internal.InjectorShell $ Builder.build (InjectorShell.java:137) по адресу com.google.guice@4.2.2/com.google.inject.internal.InternalInjectorCreator.build (InternalInjectorCreator.java:103) по адресу.google.guice @ 4.2.2 / com.google.inject.Guice.createInjector (Guice.java:87) по адресу com.google.guice@4.2.2/com.google.inject.Guice.createInjector (Guice.java:69) на com.google.guice@4.2.2/com.google.inject.Guice.createInjector (Guice.java:59) на org.veary.debs.db / org.veary.debs.tests.PersistenceTest.testAccountDao (PersistenceTest.java:43) в java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAjavase.jmp62)jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) в java.base / java.lang.reflect.Method.invoke (Method.java:566)

...