Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java 9中将模块命令与javac一起使用时出错_Java_Javac - Fatal编程技术网

在java 9中将模块命令与javac一起使用时出错

在java 9中将模块命令与javac一起使用时出错,java,javac,Java,Javac,我下面是一本书中的例子,但当我试图将代码保存在mods目录中时,出现了一个错误。当我键入javac-dmods——模块源路径src-src\com.jdojo.intro\module-info.java-src\com.jdojo.intro\com\jdojo\intro\Welcome.java javac: invalid flag: --module-source-path Usage: javac <options> <source files> use -h

我下面是一本书中的例子,但当我试图将代码保存在mods目录中时,出现了一个错误。当我键入
javac-dmods——模块源路径src-src\com.jdojo.intro\module-info.java-src\com.jdojo.intro\com\jdojo\intro\Welcome.java

javac: invalid flag: --module-source-path
Usage: javac <options> <source files>
use -help for a list of possible options
javac:无效标志:-模块源路径
用法:javac
使用-help获取可能选项的列表
这些文件都在正确的目录中

使用java版本“9” Java(TM)SE运行时环境(构建9+180)
Java HotSpot(TM)64位服务器虚拟机(构建9+180,混合模式)

首先检查调用的编译器版本:

javac -version
可能正在使用以前的安装。在这种情况下,调整
PATH
环境变量,使Java 9安装的路径成为一个开始。(或者在调用javac时使用完整路径,如
\some\dir\java\jdk9\bin\javac

我使用以下批处理文件(windows)将环境更改为Java 9:

@set JAVA_HOME=%JDK9_HOME%
@PATH .;%JAVA_HOME%\bin;%PATH%
@java -version

已经将
JDK9_HOME
设置到我安装java的目录中。

您是否尝试过在没有违规标志的情况下使用它?我想可能是因为--module source path和它后面的src文件夹之间有一个随机的src单词,但我不确定,因为我还没有使用java 9。我尝试过在“path”后面没有“src”,但我有相同的错误。该命令是从书本示例复制粘贴的。是否使用了
-help
?我很确定它提供了一个可能的选项列表。是的,当我改为java 9时,我只从env variables中更改了java_HOME,但我将java 8保留在路径中,更改它解决了问题。