monarch-initiative / PhenoteFX

PhenoteFX
https://monarch-initiative.github.io/PhenoteFX/
BSD 3-Clause "New" or "Revised" License
5 stars 1 forks source link

update to Java11 #82

Closed pnrobinson closed 3 years ago

pnrobinson commented 5 years ago

Tried this right now, but the current phenol version has what appears to be split packages -- lots of errors such as

Error:java: the unnamed module reads package org.semanticweb.owlapi.dlsyntax.parser from both owlapi.distribution and owlapi.parsers

Possibly this can be solved by appropriate pom file exclusions. Need to research this.

pnrobinson commented 4 years ago

After exploring more, I do not think the current injection framework is easily compatible with the java 9 module system. It probably makes more sense to refactor a number of things first, e.g. also junit, and then go modular. The following is close but does not work because of the PresenterFactory service.

module phenotefx {
    requires javafx.controls;
    requires javafx.fxml;
    requires javafx.web;
    requires javafx.swing;
    requires javafx.base;
    requires orange.extensions;
    requires hpotextmining.gui;
    requires hpotextmining.core;
    requires java.annotation;
    requires javax.inject;
    requires controlsfx;
    requires guava;
    requires log4j.api;
    requires phenol.io;
    requires phenol.core;
    requires phenol.annotations;
    requires slf4j.api;
    opens org.monarchinitiative.phenotefx to javafx;
    exports org.monarchinitiative.phenotefx;
}
pnrobinson commented 3 years ago

I am going to close this branch. We should reimplement this using Java 16/Spring if at all, possible on the basis of Fenominal.