Discuss / Java / windows在powershell和cmd下运行 "jre/bin/java --module hello.world"

windows在powershell和cmd下运行 "jre/bin/java --module hello.world"

Topic source

powershell可以直接在opp-module目录下运行:"\oop-module> jre/bin/java --module hello.world";

但是在"\oop-module\jre\bin"下运行:"\oop-module\jre\bin> java --module hello.world"会报错:

Error occurred during initialization of boot layer

java.lang.module.FindException: Module hello.world not found

cmd必须在"\oop-module\jre\bin"下运行:"\oop-module\jre\bin> java --module hello.world"才可以成功

直接在opp-module目录下运行:"\oop-module> jre/bin/java --module hello.world";会报错:

'jre' 不是内部或外部命令,也不是可运行的程序

或批处理文件。

老师求解答!!!

powershell和cmd下运行:oop-module>jre\bin\java --module hello.world 可以成功(这个应该是目录符表示的问题)。

但是为什么powershell 运行"oop-module\jre\bin>java --module hello.world"会报错:

\oop-module\jre\bin> java --module hello.world

Error occurred during initialization of boot layer

java.lang.module.FindException: Module hello.world not found

但是cmd不会报错:

\oop-module\jre\bin>java --module hello.world

Hello, xml!

求解答!!

"\oop-module> jre/bin/java --module hello.world" 应该是运行"\oop-module\jre\bin"下的一个模块文件,但是直接在文件管理器下查看并没有 .jmod文件。

那java是怎么运行hello.world这个模块的呢?

“jre/bin/java” 你可以先查看下这个路径下的 java 到底是什么。

我也遇到同样的问题,找到原因了:

cd 切到 jre/bin 目录后再运行 java --module hello.world 实际上运行的是原来安在系统里的那个jre,不是新生成的这个jre。

改成运行 ./java --module hello.world 就没问题了。

#6 Created at ... [Delete] [Delete and Lock User]

楼上正解,感谢解答!


  • 1

Reply