在dos窗口中编译和运行java文件的方法
配置path环境变量
在学习java时,配置path环境变量主要目的是让windows操作系统可以找到java.exe和javac.exe文件。
所以只要把带有java.exe和javac.exe的文件夹的路径配置到path环境变量中就行了。
path环境变量通过;(英文半角分号)分隔不同的路径。
JAVA_HOME的主要目的是为了方便用户更改jdk版本,可以在JAVA_HOME中直接更改而不用去path中更改,但是不使用JAVA_HOME,直接在path里去配置路径也没有任何问题。
我的电脑——>系统属性——>高级系统设置——>环境变量——>找到系统变量中的path添加路径例如本机中是
;D:\java\jdk1.8.0_201\bin
安装目录不同,以上的路径也不同。
配置成功后,在dos命令窗口中可以输入
java -version or javac -version
查看java或者javac 版本
java version "1.8.0_201"
出现版本号,就意味着配置成功,可以使用java和javac命令。
一般情况下,出现
'xxx' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
都是在path环境变量中找到没有相关的路径。
编译java文件
java文件都是以.java结尾的文件。
编译方式:在dos命令窗口中输入
javac 文件路径(包括文件名和后缀.java)
如何快速定位java文件路径
1)在java所在的文件目录中
在地址栏里输入cmd就可以快速定位(不包括文件名)
2)在java所在的文件目录中
按住shift键+鼠标右键,选择“在此处打开命令窗口”,也可以快速定位(不包括文件名)
3)神操作!!!!
可以把要编译的java文件直接拖拽到dos命令窗口中,会直接显示文件的路径包括文件名及后缀。
运行java程序
编译完java文件后,会在同一目录下生成一个文件名相同后缀名为.class的文件。如:
A.java —编译—>A.class
A.class是字节码文件,也是运行java程序的主要文件。
A.class类名为A,B.class类名为B。
运行方式:在dos命令窗口中输入
java 文件名(类名),不需要后缀.class
必须要在.class文件存在的目录中,执行命令。
执行java程序的过程
在dos命令窗口中输入java 类名后
- 会先启动jvm(java虚拟机)
- jvm启动“类加载器”(classloader),类加载器会在硬盘上找字节码文件。如:java a —找—> a.class文件
- 如果没有找到相应的文件,会报错。
错误: 找不到或无法加载主类
如果找到了文件,类加载器会将改文件装载到jvm当中,jvm会启动“解释器”将字节码文件解释为“101000110”二进制码。操作系统执行二进制码与硬件交互。
在执行java程序的过程里上述的第二步中,类加载器在硬盘上找字节码文件的时候,默认情况下会在当前路径中找。所以在执行java命令时必须要在.class文件存在的路径中,执行命令。
classpath环境变量
配置classpath环境变量的目的是给类加载器指路。
当配置了classpath环境变量时,类加载器只会在classpath配置的路径中找,不会再去当前路径中找。
默认情况下:类加载器会到当前路径中找字节码文件。
配置classpath环境变量:类加载器会到指定的路径找字节码文件,如果指定的路径中没有相应的字节码文件,即使在当前路径下有相应的字节码文件,也会报错。
错误: 找不到或无法加载主类
总结
到此这篇关于在dos窗口中编译和运行java文件的文章就介绍到这了,更多相关dos窗口编译和运行java文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
从零开始学springboot整合feign跨服务调用的方法
这篇文章主要介绍了从零开始学springboot整合feign跨服务调用的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-03-03Java中forEach使用lambda表达式,数组和集合的区别说明
这篇文章主要介绍了Java中forEach使用lambda表达式,数组和集合的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-07-07java基于Apache FTP实现文件上传、下载、修改文件名、删除
本篇文章主要介绍了Apache FTP实现文件上传、下载、修改文件名、删除,实现了FTP文件上传(断点续传)、FTP文件下载、FTP文件重命名、FTP文件删除等功能,有需要的可以了解一下。2016-11-11spring-boot-starter-web更换默认Tomcat容器的方法
Spring Boot支持容器的自动配置,默认是Tomcat,当然我们也是可以进行修改的。下面小编给大家带来了spring-boot-starter-web更换默认Tomcat容器的方法,感兴趣的朋友跟随小编一起看看吧2019-04-04
最新评论