Как реализовать ModuleReader для JPMS? - PullRequest
0 голосов
/ 18 сентября 2018

Я пытаюсь понять, как реализовать пользовательский ModuleFinder.Для этого мне нужно реализовать пользовательские ModuleReference, а для ModuleReference мне нужно реализовать ModuleReader.Это мой код:

ModuleReference ref = new ModuleReference(moduleDescriptor, Paths.get(path).toUri()) {

@Override
public ModuleReader open() throws IOException {
    ModuleReader moduleReader = new ModuleReader() {
        @Override
        public Optional<URI> find(String name) throws IOException {
            //LINE X
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public Stream<String> list() throws IOException {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public void close() throws IOException {
            throw new UnsupportedOperationException("Not supported yet.");
        }
    };
    return moduleReader;
}

};

Я не могу понять, что я должен написать на LINE X.Как я понимаю, этот модуль не загружается JVM, поэтому я должен дать URI для ресурса внутри jar, который находится в файловой системе?Что-то вроде /home/Sam/temp/foo-1.jar!META-INF/temp.txt или как?

1 Ответ

0 голосов
/ 08 октября 2018

Пример ModuleReader можно найти в этой ветке рассылки http://mail.openjdk.java.net/pipermail/jigsaw-dev/2018-September/013924.html

...