Antlr4在win10下的环境配置
Antlr4在win10下的环境配置
最近做的项目,需要将建模生成的文件反编译生成模型。以前的导师推荐过一款语法解析器生成器ANTLR (ANother Tool for Language Recognition) ,于是想试试是否可以用于这个项目。
1. 前言(ANTLR 的介绍)
- ANTLR 的官方网址:https://www.antlr.org/
- GitHub地址:Antlr Project,目前我用的比较的多的是antlr/grammars-v4和 antlr/antlr4/doc .
- 维基百科——ANTLR
- 官网介绍的翻译:ANTLR 解析器介绍。摘抄如下:
ANTLR 是一个强大的解析器,你可以使用它来读取,处理,执行或翻译结构化文本或二进制文件。它广泛应用于学术界和工业界,构建各种语言,工具和框架。 Twitter 搜索使用 ANTLR 进行查询解析,每天有超过20亿次查询。 Hive 和 Pig 的语言,Hadoop 的数据仓库和分析系统都使用 ANTLR。 Lex Machina 使用 ANTLR 从法律文本中提取信息。 Oracle在 SQL Developer IDE 中使用 ANTLR 及其迁移工具。 NetBeans IDE 用 ANTLR 解析 C ++。Hibernate 对象关系映射框架中的 HQL 语言是用ANTLR 构建的。
- 反正看起来就是很牛的样子啦~
2. Antlr4环境准备——安装JDK1.6 Or later
Antlr4安装需要先安装JDK1.6 or later,官网原话Install Java (version 1.6 or higher)
。以前都是做分布式,用的环境都是Ubuntu,里面什么都配好了,现在用windows,发现什么都没有。。。。
① 下载JDK1.7
- 官网要求
Install Java (version 1.6 or higher)
,但为了保险起见,自己打算安装JDK1.7,发现自己在官网找不到历史版本的下载入口,于是又度娘的了一次:JDK JRE 1.4,5,6,7,8 各版本下载地址 ,选择的是JDK17的第二个链接。 - 进入到下载页面后,下载的是第一个版本
Java SE Development Kit 7u80
。
② 安装JDK1.7
- 首先在D盘创建了
D:\java
文件夹,然后在下面创建了D:\java\jdk17
和D:\java\jre17
两个文件夹。 - 点击下载好的JDK安装包,开始进行安装,其中jdk安装在
D:\java\jdk17
,JRE安装在D:\java\jre17
。参考博客:在 Win10 系统下安装 JDK 及配置环境变量的方法。
③ 配置JDK环境变量
- 添加
JAVA_HOME
到环境变量中,值为D:\java\jdk17
。 - 添加
CLASSPATH
到环境变量中,值为:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
。 - 更改
Path
环境变量,添加内容为:%JAVA_HOME%\bin
和%JAVA_HOME%\jre\bin
。 - 测试环境变两是否配置成功,在cmd中输入
java
和javac
不报错,显示的部分信息截图如下:
至此JDK安装完成!
3. Antlr4环境配置
① 下载Antlr4
- 下载地址:https://www.antlr.org/download/,选择T
ool and Java runtime lib
下的antlr-4.7.2-complete.jar进行下载。 - 将下载好的
antlr-4.7.2-complete.jar
移动到D:\antlr
目录下,方便后面进行环境配置。
② 配置Antlr4环境
- 添加ANTLR到系统环境变量
CLASSPATH
中:在刚刚创建的CLASSPATH
环境变量中添加D:\antlr\antlr-4.7.2-complete.jar
:
- 为ANTLR Tool 和 TestRig 创建batch命令:
(1)在D:\antlr
目录下创建antlr4.bat
文件,内容为:java org.antlr.v4.Tool %*
。
(2)在D:\antlr
目录下创建grun.bat
文件,内容为:java org.antlr.v4.gui.TestRig %*
。 以前的版本是java org.antlr.v4.runtime.misc.TestRig %*
,按照旧的配置,会报警告Warning: TestRig moved to org.antlr.v4.gui.TestRig; calling automatically
。
(3)更改Path
环境变量,添加内容为:D:\antlr
。
③ 测试Antlr4环境配置是否成功
- 在cmd中分别输入
antlr4
命令和grun
命令,显示信息如下:
可以看出ANTLR的版本为4.7.2,跟我们下载的jar包一致。
④ 创建简单的文件并运行
- 创建
Hello.g4
文件,内容如下:
grammar Hello ;r : 'hello' ID ;ID : [a-z]+ ;WS : [ \t\r\n]+ -> skip;
- 运行
Hello.g4
文件,在cmd中进入Hello.g4
文件所在目录D:\ANTLR_temp
,输入以下命令:
antlr4 Hello.g4
会生成以下新的文件:
- 编译转化生成的java文件:
javac Hello*.java
会生发现多了.class文件:
- 输入内容,Antlr4将内容解析为语法树:
> grun Hello r -tree #以终端输出的形式显示语法树
hello parrt
^Z #按下enter键,显示语法树
(r hello lucy)
> grun Hello r -gui #以java窗体的形式显示语法树
hello parrt
^Z #按下enter键,显示语法树
终端显示的语法树:
以java窗体显示的语法树:
至此,Antlr4在win10下的环境配置已经大功告成!
参考链接:
ANTLR4在windows上的安装(java版)——中文文档
Setting up ANTLR4 on Windows(英文文档)
Getting Started with ANTLR v4(官方文档)
Antlr4在win10下的环境配置相关推荐
- win10下pytorch-gpu环境配置
一.电脑硬件资源 使用的笔记本电脑硬件配置如下: 1.CPU intel core i7 7700HQ 2.显卡有两个,一个是集成显卡,一个是英伟达的GEFORCE GTX 1050(这个显卡 ...
- ANTLR4(一) VsCode Win10 Java 安装+环境配置+官方示例
ANTLR4 VsCode Win10 Java 安装及环境配置 vscode上实现官方示例 预期效果 编写批处理文件 编写.g4格式的语法文件 运行ANTLR4工具 测试生成的语法分析器 将语法分析 ...
- win10下git的配置教程
win10下git的配置教程 下载并安装git 登录git的官方网站,下载git.注意在windows,linux,mac系统上的下载版本不同,要根据自己的本地环境来选择安装包,如下图所示,这里我们选 ...
- tensorflow gpu python3.5_Win10+Anaconda3下tensorflow-gpu环境配置
Win10+Anaconda3下tensorflow-gpu环境配置 基本环境 操作系统window10-education 显卡 NIVIDA GETFORCE GTX 1050 安装Anacond ...
- Win10+Python+virtualenv 环境配置
Win10+Python+virtualenv 环境配置 2017年10月25日 15:23:58 猫儿不熊 阅读数 2813 ...
- JAVA环境配置及如何解决win10重启后环境配置失效的问题
一.配置JAVA环境 1.JDK的下载与安装 进入官网下载对应版本 注意:安装路径最好不要包含中文或空格等特殊字符,最好使用纯英文目录 2.配置环境变量的步骤 (1)按下win+E键,找到此电脑,右键 ...
- linux的lnmp环境,Ubuntu 16.04 LTS下LNMP环境配置简述
Ubuntu 16.04 LTS下LNMP环境配置简述 1.安装mysql sudo aptinstall mysql-server 安装过程会提示密码 2.安装nginx和php #添加nginx和 ...
- vs在linux下的环境搭建,linux下vscode环境配置
文章目录 linux下vscode环境配置 编译器,调试器安装 sudo apt update #通过以下命令安装编译器和调试器 sudo apt install build-essential gd ...
- 【编译器】Mac下gcc环境配置折腾
Mac下gcc环境配置折腾 1. 在Terminal键入g++提示自动安装 gcc:Terminal键入g++,来自x-code的gcc工具clang,默认版本4.2.1 Command Line T ...
最新文章
- Essential C++中文版 前言
- 调用者保存寄存器和非调用者保存寄存器
- 【codeforces】【比赛题解】#950 CF Round #469 (Div. 2)
- CentOS 6.7 配置JSP运行环境之resin
- 计算机手速专业说法,大学里“挂科率超高”的专业,学霸也不好拿捏,考试难补考更难...
- 如何软件项目电子投标
- 2018-4-25mysql数据库基础
- 银企直连ukey 集中管理方案
- matlab norm函数使用_matlab中norm函数的用法(图)
- python量化选股_python量化选股策略
- javascript 上传的Excel格式校验
- 计算机维修培训教材,计算机芯片级维中心(芯片级维修培训教材)b.doc
- C++ STL源码剖析 tr1与std array
- fetchone()和fetchall()的准确读音
- Midjourney之外21款免费的AI Image画图网站集合
- icc校色文件使用教程_浅谈如何用ICC文件进行校色,校色前后效果展示
- 支付宝小程序获取复选框选中值id,使其显示且可编辑
- mobaxterm标签页最下方服务器内存硬盘情况信息的状态栏显示与关闭
- html引用不了自定义字体,html5 – 自定义@ font-face不加载chrome(chrome自定义字体无法渲染)...
- antd+react ---手机号校验(流程中使用)
热门文章
- 明德扬FPGA开发板XILINX-K7核心板Kintex7 XC7K325 410T工业级
- 06_Request对象封装请求信息(获取请求信息,和把前端请求转发到当前服务器其他资源)
- 对抗样本方向(Adversarial Examples)2018-2020年最新论文调研
- xshell打开多个窗口_打开软件太多,窗口用起来一团糟?让它来帮你管理:Groupy...
- 半次元获取收藏夹下所有的图片
- 第二次作业熟悉使用工具
- MODIS数据产品介绍及下载
- 商品交易系统之---产品介绍
- 深层揭露百度缘何被黑
- 惠普dl20g9服务器系统分区,惠普商用笔记本预装WIN10系统如何分区