IllegalAccessException при доступе к моей собственной библиотеке JAR - PullRequest
0 голосов
/ 29 октября 2019

У меня есть своя маленькая, но растущая библиотечная банка (Laniakea), которая доступна в частном репозитории Maven. Когда я хочу включить его в другой мой проект, я получаю следующее исключение:

        Exception in thread "JavaFX Application Thread" java.lang.IllegalAccessError: class de.blackhole.software.charon.ui.DeploymentDescriptorPanelController (in module Charon) cannot access class de.blackhole.software.laniakea.utils.Conversions (in module Laniakea) because module Laniakea does not export de.blackhole.software.laniakea.utils to module Charon
        at Charon/de.blackhole.software.charon.ui.DeploymentDescriptorPanelController.setTexts(DeploymentDescriptorPanelController.java:200)
        at Charon/de.blackhole.software.charon.ui.DeploymentDescriptorPanelController.setDescriptor(DeploymentDescriptorPanelController.java:148)
        at Charon/de.blackhole.software.charon.ui.DeploymentDescriptorPanelController.lambda$init$0(DeploymentDescriptorPanelController.java:123)
        at javafx.base/com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:348)
        at javafx.base/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:80)
        ...
javafx.graphics/com.sun.glass.ui.View.handleMouseEvent(View.java:556)
        at javafx.graphics/com.sun.glass.ui.View.notifyMouse(View.java:942)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
        at java.base/java.lang.Thread.run(Thread.java:830)

В обоих проектах используются файлы информации модуля. Харон:

module Charon {
    requires javafx.fxml;
    requires javafx.controls;
    requires org.eclipse.paho.client.mqttv3;
    requires postgresql;
    requires java.sql;
    requires jackson.core;
    requires jackson.databind;
    requires jackson.annotations;
    requires toml4j;
    requires Laniakea;

    opens de.blackhole.software.charon to javafx.fxml;
    opens de.blackhole.software.charon.ui to javafx.fxml, Laniakea;
    opens de.blackhole.software.charon.data to javafx.base, jackson.databind;
    exports de.blackhole.software.charon;
}

Ланиакя (библиотека):

module Laniakea {

    requires javafx.fxml;
    requires javafx.controls;
    requires java.sql;
    requires toml4j;

    opens de.blackhole.software.laniakea to javafx.fxml;
    opens de.blackhole.software.laniakea.ui to javafx.fxml;

    exports de.blackhole.software.laniakea;
}
...