javac -sourcepath如何与指定文件的路径相关?

时间:2014-08-01 01:42:45

标签: java javac

我有这个java源文件

C:\crp\dfdf\src\oata\HelloWorld.java

我可以编译它

C:\crp\dfdf>javac -sourcepath c:\crp\dfdf -d build\classes src\oata\HelloWorld.j ava

C:\crp\dfdf\build\classes\oata\HelloWorld.class

但是我注意到(保持相同的目录并保持与上面相同的其他参数)然后无论源路径是什么,它仍然有效

C:\crp\dfdf>javac -sourcepath c:\sdklsdlewrrblahthisdirdoesnotexist -d build\classes src\oata\HelloWorld.java

C:\crp\dfdf>

如果我更正了源路径(因此,回到c:\crp\dfdf\src)但移到了另一个目录,那么它就不起作用了

C:\>javac -sourcepath c:\crp\dfdf\src -d build\classes src\oata\HelloWorld.java
javac: file not found: src\oata\HelloWorld.java
Usage: javac <options> <source files>
use -help for a list of possible options

C:\>

我想也许指定文件的路径附加到源路径,但这不起作用

C:\>javac -sourcepath c:\crp\dfdf\src -d build\classes oata\HelloWorld.java
javac: file not found: oata\HelloWorld.java
Usage: javac <options> <source files>
use -help for a list of possible options

所以我很难看到sourcepath的运作方式

1 个答案:

答案 0 :(得分:3)

其他文件(可能需要编译为依赖项)不在您当前目录下的位置或与文件的源路径相关时,使用-sourcepath指定编译。它很少使用。