trie4j icon indicating copy to clipboard operation
trie4j copied to clipboard

feature request: Support of Java Platform Module System (JPMS)

Open miurahr opened this issue 2 years ago • 2 comments

Java 9 has new feature JPMS that was also known as Project jigsaw. Because trie4j library has no dependency, it can be a leaf of software book of materials, it is valuable to support JPMS for me, at dependeents projects such as mdict4j, stardict4j.

see. https://central.sonatype.com/artifact/com.github.takawitter/trie4j/0.9.8/dependents

You can support JPMS with Multi-Release jar, even when target Java is not 9. see https://nipafx.dev/multi-release-jars-multiple-java-versions/

miurahr avatar Oct 10 '23 04:10 miurahr

module-info.java will be simple like follows

module org.trie4j {
    requires java.base;

    exports org.trie4j;
    exports org.trie4j.bv;
    exports org.trie4j.doublearray;
    exports org.trie4j.io;
    exports org.trie4j.louds;
    exports org.trie4j.louds.bvtree;
    exports org.trie4j.patricia;
    exports org.trie4j.tail;
    exports org.trie4j.tail.builder;
    exports org.trie4j.tail.index;
    exports org.trie4j.util;
}

miurahr avatar Oct 10 '23 22:10 miurahr

moved to Java11 (next LTS release to Java8, that has the module support) and added module-info.java. https://github.com/takawitter/trie4j/commit/e47f68265eeb32614751dc01fbd03ff872d66cbd

takawitter avatar Oct 14 '23 07:10 takawitter