栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

javac不是内部或外部命令,也不是可运行的程序解决办法和踩过的一些坑

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

javac不是内部或外部命令,也不是可运行的程序解决办法和踩过的一些坑

javac不是内部或外部命令,也不是可运行的程序解决办法和踩过的一些坑
  • jdk下载和测试
  • 知其然,知其所以然:配置的目的,踩过的坑
  • 环境变量配置,仅供参考

jdk下载和测试

链接: 官网下载地址
下载安装完成后进行测试:
1.首先找到安装jdk的bin目录,在此目录下打开cmd。

2.输入java、javac命令测试程序是否可以正确运行。如果提示“不是内部或外部命令,也不是可运行的程序”,卸载jdk、jre重新安装。

3.在cmd窗口输入命令javac就相当于运行bin目录下的javac.exe程序

知其然,知其所以然:配置的目的,踩过的坑

我们安装完jdk以后,一般都需要配置环境变量。环境变量是什么?为什么要配置环境变量?环境变量要配置在哪里呢?
1.环境变量(environment variables):一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。
2.配置环境变量的目的就是为了运行java程序的时候系统可以找到对应的运行环境,如果不配置java就运行不起来。
3.环境变量主要配置系统变量里面的path里面。path是什么呢?**path:PATH是计算机名词,功能是设备可执行文件的搜索路径。**说明:当运行一个可执行文件时,DOS会先在当前目录中搜索该文件,若找到则运行之;若找不到该文件,则根据PATH命令所设置的路径,顺序逐条地到目录中搜索该文件;

踩坑:
1.新建JAVA_HOME的时候一定要建在系统变量里面,不要建在用户变量里面!

2.以前随便按照网上配置好以后能用就没管,就是用cmd测试了java、java-version。结果想用javap命令的时候提示javap不是内部或外部命令,也不是可运行的程序。为什么会这样呢?因为我之前配置的JAVA_HOME没管用,但是为什么java命令能用呢,是因为在path里面自动配置了如图所示的路径C:Program Files (x86)Common FilesOracleJavajavapath,这个路径里面有java,实际JAVA_HOME没管用,淦!而且如图这样写环境变量的话,上面那个java路径排在前面,后面的JAVA_HOME就会失效。
3.以管理员身份运行cmd可以运行java、javac、javap等程序,但是直接打开cmd则显示不是内部或外部命令,也不是可运行的程序。比如在IntelliJ IDEA中打开Terminal,输入javap命令调试显示不是内部或外部命令,也不是可运行的程序。一条解决方案:找到jdk文件夹,然后右键属性,找到安全设置所有组或用户名,给予完全控制权限,然后重新打开cmd测试即可。

环境变量配置,仅供参考

1.添加JAVA_HOME变量,变量值是jdk的路径,放在系统变量里面。

2.编辑PATH环境变量,一个是jdk的运行程序目录,一个是jre运行环境目录。%JAVA_HOME%bin ,%JAVA_HOME%jrebin。

3.添加CLASSPATH环境变量,也是系统变量里面:.;%JAVA_HOME%lib;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar

4.保存后测试一下cmd,输入java、javac等命令,这里的cmd一定是保存后重新打开cmd!!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/351603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号