antlr4环境配置 与 java15改1.7版本 与 java1.7的javac不是内部或外部命令,也不是可运行的程序

1. 配置antlr4

今天做编译原理实验五要用antlr而不是我在上个实验中用的antlrworks-1.5.2(antlrworks-1.5.2也不支持文法直接左递归),于是按教程配置antlr4,但CLASSPATH与Path都按教程配置了,终端输“antlr4”却显示:错误: 找不到或无法加载主类 org.antlr.v4.Tool 原因:java.lang.ClassNotFoundEx

一顿搜索改配置都没用,最后在一篇帖子中找到了可能的原因:【当Java的版本高于10的时候不需要配置CLASSPATH 环境变量,只需要配置JAVA_HOME和PATH即可】我的Java版本是jdk-15.0.2,因此现有的教程中的配置不适合我,而我对环境变量的配置不了解,于是只能降低java版本到适合教程。

2.java改版本

按网上教程安装1.7版本,安装完还未改配置的文件夹如下,15和1.7版本并存。安装好1.7版本后
再按网上教程配置环境,共改了Classpath,JavaHome,path但都没用,版本还是15(也可能是我当时改完没关环境变量页面(后面才意识到好像要关闭才重新生效,终端也是一样)),于是再替换C/WINDOWS/SYSTEM32中的java.exe等三个文件,再改win+r输入regedit跳出的注册表编辑器中的java版本(却发现其中显示的版本已经是1.7了),还是不行,于是电脑重启。重启后还不行,再删环境path中的C:\ProgramData\Oracle\Java\javapath。最后不知道怎么就版本调好了,但是终端输入java,java -version都没问题,javac却显示: javac不是内部或外部命令…

3.处理 javac不是内部或外部命令,也不是可运行的程序这一问题

还是网上到处找帖子,不断试错,过程就不说了,最后将尝试的成功结果放在下面:
JAVA_HOME: C:\Program Files\Java\jdk1.7.0_80;

CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

最关键的是PATH%JAVA_HOME%\jre\bin;
C:\Program Files\Java\jdk1.7.0_80\bin

这里我分成了两句来写,但关键点在于…\jre\bin这句前面可以用%JAVA_HOME%,但…\bin这句前面必须用绝对路径即C:\Program Files\Java\jdk1.7.0_80,原因不知道(我是win10)而这两句在PATH的先后顺序经过实验不影响。
(不过PATH中原有的C:\ProgramData\Oracle\Java\javapath这句我在之前改版本的时候就删去了,所以也不知道这句是不是一定要删).
在这里插入图片描述
最后改完,javac就成功了:在这里插入图片描述
于是antlr4也很顺利地按教程配置环境成功了,还写了这份“教程”。

但我的实验应该是来不及了。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值