首页 > 其他分享 >在 max环境下 下载、安装、运行 Antlr4

在 max环境下 下载、安装、运行 Antlr4

时间:2022-10-18 14:59:40浏览次数:36  
标签:java lib antlr max jar ## Antlr4 Hello 下载

1. 下载安装

##1. 切目录
cd /usr/local/lib

##2. 下载jar包
wget https://www.antlr.org/download/antlr-4.0-complete.jar --no-check-certificate

##3.配置环境变量 
export CLASSPATH=.:/usr/local/lib/antlr-4.0-complete.jar

##4.设置别名
alias antlr4='java -jar /usr/local/lib/antlr-4.0-complete.jar'
相对于 
alias antlr4='java org.antlr.v4.Tool'

##5.测试 antlr4 命令
[root@gaocun lib]# antlr4
ANTLR Parser Generator  Version 4.0
 -o ___              specify output directory where all output is generated
 -lib ___            specify location of grammars, tokens files
 -atn                generate rule augmented transition network diagrams
 -encoding ___       specify grammar file encoding; e.g., euc-jp
 -message-format ___ specify output style for messages in antlr, gnu, vs2005

2. 运行antlr并测试识别程序

##1.创建 Hello.g4

grammar Hello;   // 定义一个名为Hello的语法

r : 'hello' ID;  // 匹配一个关键字hello和一个紧随其后的标识符
ID : [a-z]+;     // 指定 标识符的组成规则(一个或多个小写字母)
WS : [\t\r\n]+ -> skip; // 忽略一个或多个 \t\r\n

##2.使用 org.antlr.v4.Tool 和 Hello.g4 = 来生成 词法解析器和语法解析器
antlr4 Hello.g4
相对于
java org.antlr.v4.Tool Hello.g4

[root@gaocun lib]# ls
antlr-4.0-complete.jar
HelloBaseListener.java
Hello.g4
HelloLexer.java
HelloLexer.tokens
HelloListener.java
HelloParser.java
Hello.tokens

##3.编译 生成java源文件
javac *.java
注意: 编译的时候需要 antlr-4.0-complete.jar里面的类,
    确保你配置了 CLASSPATH环境变量
    否则 你需要指定 -cp=/usr/local/lib/antlr-4.0-complete.jar

[root@gaocun lib]# ls | grep class
HelloBaseListener.class
HelloLexer.class
HelloListener.class
HelloParser.class
HelloParser$RContext.class

##4.使用 自带的 TestRig来调试 (注意 antlr-4.6及以后版本 使用 org.antlr.v4.gui.TestRig)

4.1 查看分词
[root@gaocun lib]# java org.antlr.v4.runtime.misc.TestRig Hello r -tokens
hello gaocun
EOF => 文件结束符(unix ctrl+D win ctrl+Z)
// 生成的结果
[@0,0:4='hello',<1>,1:0]
[@1,6:11='gaocun',<2>,1:6]
[@2,13:12='<EOF>',<-1>,2:0]

FAQ: 错误1: 找不到或无法加载主类 org.antlr.v4.runtime.misc.TestRig
        没有配置 CLASSPATH环境变量 
        或者 你需要指定 java -cp=/usr/local/lib/antlr-4.0-complete.jar
     错误2: Can't load Hello as lexer or parser
        java 无法找到 生成词法分析器和语法分析器(就是编译后的.class文件)
        可以 java -cp=/usr/local/lib/hello
        

4.2 查看语法树

[root@gaocun lib]# java org.antlr.v4.runtime.misc.TestRig Hello r -tree
hello gaocun
line 1:5 token recognition error at: ' '
(r hello gaocun)

4.3 查看语法树(可视化)

java org.antlr.v4.runtime.misc.TestRig Hello r -gui

 

标签:java,lib,antlr,max,jar,##,Antlr4,Hello,下载
From: https://www.cnblogs.com/bajiaotai/p/16802527.html

相关文章

  • LeetCode 53. Maximum Subarray
    ​​题目​​简单DPclassSolution{public:intdp[100005];intmaxSubArray(vector<int>&nums){if(nums.size()==0)return0;......
  • ansible rpm包下载
    Ansible2.9.18版本下载链接:https://pan.baidu.com/s/1dKlwtLWSOKoMkanW900n9Q 提取码:ansi将软件上传至系统并解压安装:#tar-zxvfansible_2.9.18.tar.gz#cdansible......
  • 762-GMAX3265 3.2微米 6500万分辨率 全局快门CMOS图像传感器
    GMAX32653.2微米6500万分辨率全局快门CMOS图像传感器        GMAX3265图像传感器的像素尺寸为3.2μm,具有6500万像素全分辨率,在12bi......
  • 《SREWorks 云原生数智运维工程实践》电子书重磅来袭!(免费下载)
    云原生是在云计算场景下的再升级,其核心是创新,是一次比物理机上云更彻底的创新。云原生让工作负载摆脱束缚,能够自由地在各种平台上运行。诚然,这种创新带来了更多的可能性,但也......
  • selenium 浏览器驱动下载安装(chrome)
    selenium下载地址https://pypi.org/project/selenium/4.0.0/#filesFireFox驱动下载地址https://github.com/mozilla/geckodriver/releaseschromeDriver下载地址ht......
  • ySQL的下载和安装(msi
    使用msi安装的优点:在使用zip手动安装后,隔一段时间MySQL服务会自动关闭,需要再次手动重启MySQL服务。而使用msi安装程序会避免这个问题,但安装过程有点繁琐。msi官网下载步......
  • PowerDesigner 16.5软件安装包下载及安装教程
    PowerDesigner16.5软件简介:PowerDesigner16.5是一款功能强大的数据库建模软件,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供......
  • shell jfrpg上传下载文件脚本
    目录shelljfrpg上传下载文件脚本重名名pull下拉脚本push推送脚本getandupload下拉修改后5秒上传shelljfrpg上传下载文件脚本重名名vim/root/.bashrcaliaspull=......
  • 基于MAX-SUM算法的大规模信息系统的协调问题matlab仿真
    一、理论基础二、核心程序三、仿真测试结果作者ID:fpga和matlabCSDN主页:https://blog.csdn.net/ccsss22?type=blog擅长技术:1.无线基带,无线图传,编解码2.机器视觉,图像......
  • PyCharm下载和安装教程(包含配置Python解释器)
    PyCharm是JetBrains公司(www.jetbrains.com)研发,用于开发 Python 的IDE开发工具。图1所示为JetBrains公司开发的多款开发工具,其中很多工具都好评如潮,这些工具可以......