ModuleNameMismatch 之谜
ModuleNameMismatch mystery
在命令行中使用 rascal,当我键入:
import demo::hello
我收到一个 ModuleNameMismatch
错误,尽管当前目录(我在其中键入 java -jar rascal-shell-stable.jar
的目录)包含一个名为 demo
的子目录,其中包含一个文件 hello.rsc
:
module hello
import IO;
void hello(){
println("Hello word");
}
但是当我输入时它会起作用
import hello
并且 hello.rsc
在当前目录中。
供您参考:我在 Windows 10。
模块名称必须是完整 module.rsc
文件的相对路径。
在这种情况下,hello.rsc
文件应该是:
module demo::hello
import IO;
void hello(){
println("Hello word");
}
这就是它在当前目录中 hello.rsc
时起作用的原因。
在命令行中使用 rascal,当我键入:
import demo::hello
我收到一个 ModuleNameMismatch
错误,尽管当前目录(我在其中键入 java -jar rascal-shell-stable.jar
的目录)包含一个名为 demo
的子目录,其中包含一个文件 hello.rsc
:
module hello
import IO;
void hello(){
println("Hello word");
}
但是当我输入时它会起作用
import hello
并且 hello.rsc
在当前目录中。
供您参考:我在 Windows 10。
模块名称必须是完整 module.rsc
文件的相对路径。
在这种情况下,hello.rsc
文件应该是:
module demo::hello
import IO;
void hello(){
println("Hello word");
}
这就是它在当前目录中 hello.rsc
时起作用的原因。