Java 到锡兰目录的Jimfs路径

Java 到锡兰目录的Jimfs路径,java,interop,ceylon,jimfs,Java,Interop,Ceylon,Jimfs,我正试图在Jimfs文件系统中创建一个目录(使用ceylon的文件模块),但从ceylon访问文件系统时,我遇到了Jimfs提供程序未安装的问题 这是我的测试程序: // File: test.se.gustavkarlsson.autogit.file.watcher.run import ceylon.file { Nil, parseURI } import com.google.common.jimfs { Jimfs { jimFs=newF

我正试图在Jimfs文件系统中创建一个目录(使用ceylon的文件模块),但从ceylon访问文件系统时,我遇到了Jimfs提供程序未安装的问题

这是我的测试程序:

// File: test.se.gustavkarlsson.autogit.file.watcher.run

import ceylon.file {
    Nil,
    parseURI
}

import com.google.common.jimfs {
    Jimfs {
        jimFs=newFileSystem
    }
}

shared void run() {
    value fs = jimFs();
    value jPath = fs.getPath("directory");
    value uri = jPath.toUri().string;
    value path = parseURI(uri);
    value resource = path.resource;
    assert (is Nil resource);
    resource.createDirectory();
}
运行时,打印以下堆栈跟踪:

ceylon run: Provider "jimfs" not found
java.nio.file.ProviderNotFoundException: Provider "jimfs" not found
    at java.nio.file.FileSystems.newFileSystem(FileSystems.java:341)
    at java.nio.file.FileSystems.newFileSystem(FileSystems.java:276)
    at ceylon.file.internal.createSystem_.createSystem(ConcreteSystem.ceylon:64)
    at ceylon.file.createSystem_.createSystem(System.ceylon:43)
    at test.se.gustavkarlsson.autogit.file.watcher.run_.run(run.ceylon:17)
    at test.se.gustavkarlsson.autogit.file.watcher.run_.main(run.ceylon)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at ceylon.modules.api.runtime.SecurityActions.invokeRunInternal(SecurityActions.java:57)
    at ceylon.modules.api.runtime.SecurityActions.invokeRun(SecurityActions.java:48)
    at ceylon.modules.api.runtime.AbstractRuntime.invokeRun(AbstractRuntime.java:75)
    at ceylon.modules.api.runtime.AbstractRuntime.execute(AbstractRuntime.java:122)
    at ceylon.modules.api.runtime.AbstractRuntime.execute(AbstractRuntime.java:106)
    at ceylon.modules.Main.execute(Main.java:69)
    at ceylon.modules.Main.main(Main.java:42)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.jboss.modules.Module.run(Module.java:312)
    at org.jboss.modules.Main.main(Main.java:460)
    at ceylon.modules.bootstrap.CeylonRunTool.run(CeylonRunTool.java:244)
    at com.redhat.ceylon.common.tools.CeylonTool.run(CeylonTool.java:491)
    at com.redhat.ceylon.common.tools.CeylonTool.execute(CeylonTool.java:380)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.redhat.ceylon.launcher.Launcher.runInJava7Checked(Launcher.java:114)
    at com.redhat.ceylon.launcher.Launcher.run(Launcher.java:41)
    at com.redhat.ceylon.launcher.Launcher.run(Launcher.java:34)
    at com.redhat.ceylon.launcher.Launcher.main(Launcher.java:27)
有关于如何安装该提供商的想法吗


我在Linux上运行Ceylon 1.2.0,使用JimFs 1.0(也测试了1.1-rc1)和JimFs,“预期”方式(纯java nio)运行良好。

这与模块可见性有关,我们需要从JDK向JimFs模块添加“读取”(使用拼图术语)


我已经开始调查了。

很有趣。我会看的!非常感谢。