当前位置: 首页 > 知识库问答 >
问题:

安装Antlr v4.4时出现问题

夏昊
2023-03-14

我试图在Windows上安装Antlr 4.4,目的是使用pyfuzzy,这是一个模糊逻辑的Python库,它依赖于Antlr的Python运行时来运行。我曾尝试(天真地)在不安装Antlr的情况下获得Python (2.7)的Antlr运行时,当然这并不成功。

因此,我尝试按照Windows的说明安装Antlr,但每次运行时都会出现错误:

Error: Could not find or load main class org.antlr.v4.Tool

antlr .jar文件位于 C:\JavaLib 中,根据安装说明逐字创建的两个批处理文件(antlr4.bat、grun.bat)也是如此。

我的CLASSPATH是(我没有开始的CLASSPATH,所以我用我的主Java目录和.jar文件的路径创建了一个):

C:\Program Files\Java\jdk1.7.0_21\lib;C:\Javalib\antlr4-complete.jar;

我的道路是(虽然我完全确定这是否相关) :

C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\MinGW\bin;C:\QtSDK\mingw\bin; C:\Software\jflex-1.5.0\bin;C:\Program Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;C:\Python27;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\DLR\Sumo\bin\;C:\JavaLib

编辑:已经切换到Antlr v 3.5.2,相应地更新了类路径,但是我仍然有同样的问题。即命令java org.antlr.Tool -3.5.2导致相同的错误。

注意:没有udated. bat文件,因为v3安装说明没有提到它们。

共有2个答案

赵炯
2023-03-14

我之所以反对Antlr4官方文档,主要是因为我不喜欢额外的环境变量和路径混乱,我寻求Java JDK的帮助,将用户库和归档文件放在JDK根目录下的子目录jre/lib/ext中。

我的系统上的例子是< code > c:\ Program Files \ Java \ JDK 1 . 8 . 0 _ 152 \ JRE \ lib \ ext

然后在我路径的某处创建了一个antlr4.cmd文件:

@echo off
java org.antlr.v4.Tool %*

grun.cmd非常相似(也在我的道路上):

@echo off
java org.antlr.v4.gui.TestRig %*

用法与官方文件相同:

antlr4 Hello.g4
javac Hello*.java
grun Hello r -tree 

然后我开始使用VS2019的自定义工具...

李俊雅
2023-03-14

为我解决的是:将antlr罐子移动到临时文件夹中。即 c:\tmp 然后设置类路径 = c:\tmp\antlr...由于某种原因,无论我尝试什么,它都无法在任何“程序”目录或子目录中工作。

 类似资料:
  • 我一直在努力尝试,但我无法克服这个错误。我有Ruby版本1.8.7和Gem版本2.1.11,我试图安装open project,但我总是遇到这个错误 安装json(1.8.1)gem::installer::extensionbuilderror:错误:未能构建gem本机扩展。 迈克 安装json(1.8.1)时出错,Bundler无法继续。在绑定之前,请确保成功。==>出错:(==>安装中止。

  • 因此,即使成功地安装了pysqlcipher3,它也没有成功。 根据我的研究,这似乎是Windows用户试图安装Sqlcipher的常见问题。 尝试#1 首先,我尝试从github下载pysqlcipher3,并通过cmd手动构建和安装它(使用和)。 在执行Python3setup.py构建时,我有一些错误(缺少几个需求,没有OPENSSL_CONF环境变量等)。),但我修复了其中的大部分。 但是

  • 当我试图从PHP7.2.X版本加载mcrypt扩展模块时。 因此我尝试使用与当前PHP版本兼容的PECL库,以便安装并遵循以下链接:在安装期间在PHP7.2上安装mcrypt! 以下是在终端上执行某些命令后获得的结果。 因为我得到的错误类型是pecl7.2-sp:command not found 从留档部分可以清楚地看到,它已经被弃用了,从安全的角度来看,它将不再可用——从那以后,从PHP 7.

  • 您好,我正在安装XAMPP,MySQL端口3306有问题。 我已使用控制面板配置我的。ini并将端口设置更改为3307,但仍显示以下错误: 22:48:55[mysql]检测到问题!22:48:55[mysql]端口3306正在被“C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe”--defauls-file="C:\Program Da

  • 下面是显示的错误消息的屏幕截图。我使用的是Windows 10计算机,安装的节点版本为14。

  • 我正在尝试使用Django设置Python3.6环境。安装说明说我应该安装mysqlclient,以便能够连接到mySQL。我明白了: mySQL安装正确。mysql\u配置文件中应该包含什么?当我尝试升级pip3时,我得到以下结果: 在使用pip3安装mysqlClient后,我注意到该模块安装在python3.5目录中,而不是python3.6目录中,所以当我试图导入运行python3.6的M