ANTLR4入门(一):Windows安装antlr4命令行环境
最近开始学习ANTLR4,《ANTLR 4权威指南》这本书是看完了,现在开始实践,本系列文记录实践过程中的遇到的问题解决过程及心得体会
下载
从antlr官方网站下载最新的antr4版本(jar):https://www.antlr.org/download.html
目前最新的4.11.1版本下载地址为:
https://www.antlr.org/download/antlr-4.11.1-complete.jar
Java 11
下载后我就立即想试试运行,但问题就来了,antlr-4.11.1-complete.jar
是JDK11编译的jar包(包含运行库-----antlr4-runtime
),所以必须是Java 11以上的版本才能运行。如果你的开发环境和我一样还是JDK11 以下的版本(我是JDK8)就要麻烦些,得去安装JDK11,这个过程网上都有教程,本文不再赘述。
Java 8
根据ANTLR4官方说明,从4.10
版本开始ANTLR4将代码生成工具(antlr-${version}-complete
)运行要求的JDK最低版本增加到了Java 11
.而ANTLR 运行库(antlr4-runtime
)的JDK 最低版本升到了Java 8
。
所以,如果要求在Java 8下运行,另一个解决办法是使用4.10
之前的最后一个版本4.9.3
。
4.9.3版本下载地址:
https://www.antlr.org/download/antlr-4.9.3-complete.jar
antlr4.bat
如果你即希望保留之前的JDK 版本,又要在命令行使用用antlr4做测试那么就处理系统中同时有两个JDK的情况,我的开发环境是JDK8,我不可能为了antlr4将系统的默认JDK升级到11.
所以我的做法是写一个如下的脚本(bat),运行anlr4时强制使用JDK11作为java环境
antlr4.bat ---- 将anlr4.bat保存在antlr-4.11.1-complete.jar
所在文件夹下
@ECHO OFF
"C:\Program Files\Java\jdk-11.0.11\bin\java" -jar "%~dp0antlr-4.11.1-complete.jar" %*
执行 antlr4.bat
输入如下,即说明antlr4能正常工作了:
grun.bat
ANTLR库中还提供了一个名为TestRig
的方便的调试工具。它可以详细列出一个语言类应用程序在匹配输入文本过程中的信息,这些输入文本可以来自文件或者控制台标准输入。TestRig使用Java的反射机制来调用编译后的识别程序。为方便使用,最好通过别名(linux下)或批处理脚本来调用它。所以我也如法炮制做了一个grun.bat
用于调用TestRig
grun.bat ---- 将grun.bat保存在antlr-4.11.1-complete.jar
所在文件夹下
@ECHO OFF
"C:\Program Files\Java\jdk-11.0.11\bin\java" -cp "%~dp0antlr-4.11.1-complete.jar" org.antlr.v4.gui.TestRig %*
执行grun.bat
,如下输出即说明TestRig
可以正常工作了:
ANTLR4入门(一):Windows安装antlr4命令行环境相关推荐
- Windows在cmd命令行环境下运行c程序
现在有许多便利的编译器,例如DevC++,sublime,vscode等等,在这些编译器里面我们添加必要的插件就可以直接运行C语言程序.但是还有一种我们可以采取的普适的运行C程序的方法--在cmd命令 ...
- ANTLR4入门(三):使用mave ANTLR4插件(antlr4-maven-plugin)执行语法解析生成器
在上篇博客<ANTLR4入门(二):图示说明eclipse安装Antlr4IDE插件的过程>,我费半天劲装好了Eclise的AntlrIDE插件,简单的创建一个ANTLR 4 工程,感受了 ...
- Vue入门教程:node安装vue命令行工具及启动项目
安装淘宝npm镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org 全局安装vue命令行工具 cnpm install - ...
- 惊艳的cygwin——Windows下的Linux命令行环境的配置和使用
5年前倒腾过一次cygwin,当时体验感觉不好.到现在一直用的是GNU utilities for Win32,在Windows的CMD中使用*nix的命令工具包. GNU utilities for ...
- windows下 cl: 命令行 error D8021 :无效的数值参数“/Wno-cpp”的解决办法
Mask R-CNN学习(三):windows下 cl: 命令行 error D8021 :无效的数值参数"/Wno-cpp"的解决办法 2018年07月20日 11:11:06 ...
- windows和linux命令行一样吗,微软改进Windows命令行 目的是和Linux命令行相抗衡
微软官方人员承认微软正在对Windows命令行环境或是Windows终端进行全方位的改进,目的是能和Linux命令行相竞争.随着Linux云服务器的大量被采用,很多Linux云服务器都没有安装图形界面 ...
- [js]windows下通过命令行运行javascript脚本,支持命令行参数
windows下通过命令行运行javascript脚本,支持命令行参数 js作为最受欢迎的语言,以其方便.通用.功能强大的特点,可以给大家在实际使用的过程中带来很大的便利. 下面是本文从实际应用的角度 ...
- linux grub安装在pbr,GRUB安装及命令行排错
GRUB安装及命令行排错 GRUB安装 安装 Grub 涉及三个步骤: 创建 /boot/grub/grub.conf 配置文件. 在 /boot/grub 安装 Grub 文件. 安装 Grub 开 ...
- windows下的命令行工具babun
Babun 可以直接在winodows下面编译linux代码 但是本人只成功编译过个个go的linux 和 C的linux,C++的编译不出来东西 安装很简单,下下来,直接双击批处理 install ...
最新文章
- Xamarin XAML语言教程ContentView视图作为自定义视图的父类
- 高可靠性的php通信框架,跨平台PHP高可靠性通信框架,OHSCE_V0.1.25 发布
- python3安装步骤mac-Mac 上安装python3——手把手教程
- Django 2 零基础 - 待办清单网站
- Oracle CheckPoint进程
- java file_java开发之File类详细使用方法介绍
- ThinkPad R400 安装win2003网卡驱动
- Swift基础语法: 23 - Swift的Trailing闭包, 捕获, 闭包是引用类型
- mac下多个php版本切换(可操作版)
- 用aspectJ 做了一次日志
- 云智能,重新定义数字化时代云的未来
- 常用win10优化工具(后续继续更新)
- matlab三维作图知识点
- oeasy教您玩转linux010105详细手册man
- 茴香豆的“茴”有几种写法?单例模式你知道有几种写法?
- 建模师有年龄限定吗?45岁还能学吗
- OpenCV旋转矩形RotatedRect的Points函数遇到的问题
- Maltrail恶意流量检测系统
- android读取assets中的txt文件路径,Android获取assets文件路径
- 2023年软考初级程序员