方法一:
进入d:/web/wsh下: javac a.java
然后退出wsh目录即进入d:/wsh下 javac wsh/b.java即可编译成功!
方法二:通过使用javac -classpath(cp)参数
进入d:/web /wsh下: javac a.java
还是在d:/wsh/wsh下: javac -classpath d:/web/wsh b.java
这样也可以编译成功!
以下方法都通过测试!
以下是javac编译的参数:
用法:javac <选项><源文件>
选项:
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径>指定查找用户类文件的位置
-cp <路径>指定查找用户类文件的位置
-sourcepath <路径>指定查找输入源文件的位置
-bootclasspath <路径>覆盖引导类文件的位置
-extdirs <目录>覆盖安装的扩展目录的位置
-endorseddirs <目录>覆盖签名的标准路径的位置
-d <目录>指定存放生成的类文件的位置
-encoding <编码>指定源文件使用的字符编码
-source <版本>提供与指定版本的源兼容性
-target <版本>生成特定 VM 版本的类文件
-version 版本信息
-help 输出标准选项的提要
-X 输出非标准选项的提要
-J<标志>直接将 <标志>传递给运行时系统
通常情况下,我们在编写java文件时,会有引用到自已定义的一些类,如果按通常的javac *.java的形式来编译会出现找不到符号的错误。例子:
假如在d:/web/wsh下有a.java和b.java两个文件,在b.java文件中有引用了a.java。
1、进入d:/web/wsh下: javac a.java
然后退出wsh目录即进入d:/wsh下 javac wsh/b.java
编译成功
2、通过使用javac -classpath(cp)参数
进入d:/web /wsh下: javac a.java
还是在d:/wsh/wsh下: javac -classpath d:/web/wsh b.java
编译成功
JVM 不认识 IO1.如果你有IO 这么一个类 , 就看看你对应import 位置 应该是放哪里 , 然后把IO 对应编译完的class 文件放那里就好了
2.如果你没有IO 这么一个类, 自己定义, 顺便把里面对应的 static 方法readDouble 实现了, 然后随便找个位置, 把class 文件import 进去
3.如果你有IO 这个类, 但这个类在jar 里面 用java command 的时候 classpath set 进去即可
like: java -classpath <路径>.***.jar <包名>.Warmup
建议 最好装个 eclipse , 这样它可以帮你 编译, 不会报这种错误