使用JFlex生成词法分析器 1:安装配置
环境:Windows 10 STEP 1: 下载 JFlex 文件,我选择的是 jflex-1.7.0.zip。下载完成后解压到想安装的位置。 文件结构如下(假设解压目录为 C:): C:jflex-1.7.0 +--bin (start scripts) +--doc (FAQ and manual) +--examples +--byaccj (calculator example for BYacc/J) +--cup-maven (calculator example for cup and maven) +--interpreter (interpreter example for cup) +--java (Java lexer specification) +--simple-maven (example scanner built with maven) +--standalone-maven (a simple standalone scanner,built with maven) +--zero-reader (Readers that return 0 characters) +--lib (precompiled classes) +--src +--main +--config (PMD source analyzer configuration) +--cup (JFlex parser spec) +--java +--jflex (source code of JFlex) +--anttask (source code of JFlex Ant Task) +--gui (source code of JFlex UI classes) +--unicode (source code for Unicode properties) +--jflex (JFlex scanner spec) +--resources (messages and default skeleton file) +--test (unit tests) ? STEP 2:修改 jflex.bat 1)进入 jflex解压目录/jflex-1.7.0/bin,打开jflex.bat 2)修改两个环境变量: JAVA_HOME :Java JDK 的安装路径 JFLEX_HOME :JFlex 的安装路径 **由于直接打开 jflex.bat 会闪退,我是在 gitbash 中用 nano 编辑的。 ? STEP 3:将?jflex解压目录/jflex-1.7.0/bin 加入系统环境变量 Path ? STEP 4:运行 jflex 检查是否配置成功(依旧用的是 gitbash) ? 文档说,命令格式为jflex <options> <inputfiles>?(如果不在命令行输入文件名,jflex会有一个弹出一个输入文件名的窗口) ? 这里是所有选项的说明: ? -d <directory>? ? 在指定目录<directory>生成文件 ? --encoding <name>? ??使用<name>格式的编码读入此法规范并书写 java 文件 ? --skel <file>? ? 使用外部骨架<file> ? --nomin? ? 在扫描生成时跳过 DFA 最小化的步骤 ? --jflex? ? 执行 JLex 解释规范 ? --dot? ? 为 NFA,DFA,minimised DFA 生成 Graphviz dot 文件 ? --dump? ? 显示 NFA,initial DFA,minimised DFA 的转换表 ? --legacydot? ? 元字符 dot ( ? --verbose or -v? ? 显示生成进度消息(默认开启) ? --quiet or -q? ? 只显示错误信息 ? --warn-unused? ? 警告未使用的宏(在 verbose 模式中默认开启,quiet 模式中默认关闭) ? --no-warn-unused? ? 不警告未使用的宏 ? --time? ? ?显示代码生成进度的时间信息 ? --version? ? 打印版本信息 ? --info? ? 打印系统与 jdk 信息 ? --unicodever <ver>? ? 打印所有 Unicode 版本<ver>支持的属性 ? --help or -h? ? ?打印帮助信息 ? 按照习俗,跑跑看 jflex --version: ? ?GOOD JOB! ? ? 参考:http://www.jflex.de/manual.html#content(官方文档) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 构建Win32 GUI代码
- windows – 是否有Microsoft认证的SSH服务器?
- group-policy – 通过GPP部署打印机时,驱动程序安装不起作用
- windows – MySQL VSS是否“安全”了?
- Error1053尝试在Windows上启动postgres作为服务
- iis-7 – ISAPI .dll作为静态内容提供
- 1.19 使用XCActionController创建Twitter/Youtube/Skype/Sp
- 为Windows编写控制台样式应用程序的良好资源?
- LeetCode-239 Sliding Window Maximum
- 在 windows 上使用 clion 调试 rust 代码