open module org.jabref {
    exports org.jabref;

    exports org.jabref.gui;
    exports org.jabref.gui.logging;
    exports org.jabref.gui.maintable;
    exports org.jabref.gui.specialfields;

    exports org.jabref.model.database;

    exports org.jabref.logic;
    exports org.jabref.logic.citationstyle;
    exports org.jabref.logic.search;

//    opens org.jabref.gui to com.google.common;
//    opens org.jabref.model.database to com.google.common;
//    opens org.jabref.logic.citationstyle to com.google.common;

    // Swing
	requires java.desktop;

	// SQL
	requires java.sql;
	requires pgjdbc.ng;

	// JavaFX
	requires javafx.graphics;
	requires javafx.swing;
	requires javafx.controls;
	requires javafx.web;
	requires javafx.fxml;
	requires afterburner.fx;
//	requires de.jensd.fx.glyphs.commons;
//	requires de.jensd.fx.glyphs.materialdesignicons;

    provides com.airhacks.afterburner.views.ResourceLocator
        with org.jabref.gui.util.JabRefResourceLocator;

	// Logging
	requires org.slf4j;
	requires org.apache.logging.log4j;

	// Preferences and XML
	requires java.prefs;
	requires java.xml.bind; // Deprecated!
    requires jdk.xml.dom;

    // Annotations (@PostConstruct)
    requires java.annotation;

    // Microsoft application insights
    requires applicationinsights.core;

    requires glazedlists.java15;
	requires jgoodies.forms;
	requires commons.logging;
	requires com.google.common;
	requires spin;
    requires easybind;
    requires de.jensd.fx.glyphs.commons;

    // Libre Office
	/*requires ridl;
	requires unoil;
	requires juh;*/
}

@@ -973,16 +973,127 @@
 cator;%0A%0A
+    provides com.airhacks.afterburner.injection.PresenterFactory%0A        with org.jabref.gui.DefaultInjector;%0A%0A
 %09// Logg
@@ -1602,24 +1602,49 @@
 phs.commons;
+%0A    requires controlsfx;
 %0A%0A    // Lib

Add afterburner.fx injector to module descriptor