问题标签 [javacc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
367 浏览

java - javacc 跳过评论但需要保留有用的评论

我需要使用 javaCC 来解析数据文件,例如:

//这是要跳过的评论

//这也是要跳过的注释

//学生表

开始:

header:( 1 //名字 2 //年龄 ) { "John" 21 } { "Jack" "22" }

#结尾

//下面是教师表,这一行也是注释跳过

//教师表

开始:

header:( 1 //name 2 //age 3 //class ) { "Eric" 31 "English" } { "Jasph" "32" "History" }

#结尾

这里我需要从“student”和“teacher”表中获取数据,还有一些其他的表格式如上。从“学生”表导出的数据为:

那就是我需要跳过这样的评论"//This is also comment to skip":谢谢。"//student Table""//Teacher Table""//name""//age"

0 投票
1 回答
855 浏览

java - 如何在 JavaCC 语法中提及 try-catch 块

我正在尝试以 http://javacc.java.net/doc/errorrecovery.html中给出的 JavaCC 语法实现错误报告和恢复

提到代码后;

JavaCC 无法解析该文件,在“尝试”字和行中显示错误

这样做的正确方法是什么?

提前致谢

在此处输入图像描述

0 投票
2 回答
432 浏览

java - 以编程方式在工作区中查找接口的引用

只是想知道哪种工具/方法可以轻松/轻松地解决以下问题?需要通过 ANT 脚本调用。

eclipse 工作区有几个项目,比如 projectA - projectO(数量为 15)。其中大部分是 Java 项目。这里的重点是我需要在不使用 Eclipse IDE 的情况下收集一些数据,而不是通过编程方式。

在作为 java 项目的 projectA 中,有一个接口,比如 InterFaceA,它正在各种其他项目中实现。

关键是我需要列出所有 15 个已实现 InterfaceA 的项目中的所有类。

我遇到了几个工具,比如扩展 Javadoc、eclipse AST、javaCC、ANTLR,但没有找到现成的解决方案。

想到了以下方法,但发现很难实施。

  • 找出所有声明的变量,字段,方法级别,即整个java文件/类,找出它们的类型,并找出实现InterfaceA的类。
  • 做类似eclipse的事情在整个工作区中为interfaceA查找引用,但是通过代码?如果我得到源代码,我将不胜感激 eclipse 如何如此快速地做到这一点。

我可以要求一个直接的解决方案,可以使用 eclipse AST 以一种很好和直观的方式完成这个吗?

PS:现有代码没有得到很好的维护。因此,可能性就像 interfaceA 可能没有使用实例变量声明,而只是在使用它之前用作局部变量等等。另外还有很多内部类等等。

提前致谢。

0 投票
1 回答
2128 浏览

java - JJTree 中的 SimpleNode 子节点

我在一个教程中读到,当你做这样的事情时:

它应该创建一个继承自 SimpleNode 的 Programm 类(一旦你使用 jjtree 编译),但在我的情况下它不会创建这样的类。我必须自己创建它还是我错过了什么?

谢谢

0 投票
1 回答
1285 浏览

regex - javacc 令牌正则表达式 and_symbol_in

我需要描述包含一些单词的令牌。该单词可以包含英文字母和其他一些特殊符号,但不应以某些已定义的英文字母开头(例如,“O”)。

看起来我需要 AND_SYMBOL_IN 操作什么的,但我在 javacc 文档中没有找到它。我需要这样的行为:

我可以创建特殊令牌(如下所示),但我相信还有更好的决定,不是吗?

0 投票
1 回答
1320 浏览

javacc - javacc 在本地忽略大小写?

我希望使我的 JavaCC 定义的一部分不区分大小写,但不是全局的。

以上似乎使所有标记(STRA AND STRB)不区分大小写。如何只忽略 STRB 大小写?

另外,我可以使以下生产不区分大小写,例如,只有“b = <...>”吗?

我承认我无法通过阅读手册来弄清楚这一点。请帮帮我。如果我没有解释清楚,请告诉我。谢谢你。

0 投票
2 回答
269 浏览

java - grails 应用程序中的 Java 编译器错误

我有一个集成了 JavaCC 解析器的 grails 应用程序。在这个解析器中,我创建了 grails 域对象。我将 Product、Release 和 Document 等对象作为 Grails 域类。

在生成的 Java 类(来自 JavaCC)中,我创建了 Products、Release 和 Documents。很多时候(虽然不总是)我从 Grails 收到构建错误,指出:

Compile error during compilation with javac. D:\workspaces\productArchive\com.rcs.products\src\java\com\configinfo\Parser.java:173: error: cannot find symbol document.setFilename(filename); ^ symbol: method setFilename(String) location: variable document of type Document

我的 Document 类如下所示:

我在 JavaCC 语法文件中将 JDK_VERSION 设置为 1.6。我正在使用 Grails 2.0.1。

谁能解释这些编译器错误?

0 投票
2 回答
1886 浏览

java - 在 JavaCC 中打印

我制作了一个简单的 javacc 解析器来在命令提示符下打印文本:

但问题是它不能打印除 az 以外的任何字符。我如何带它来打印所有 unicode 字符。

0 投票
1 回答
301 浏览

antlr - JAVACC 的 ANTLR 句法谓词

在 ANTLR 中,我们可以使用句法谓词来解决某些问题,如下所示。这只是一个简单的例子。

我想知道的是如何在 JAVACC 中实现同样的事情?谢谢。

0 投票
1 回答
1326 浏览

javacc - 恢复 Javacc 中的多个错误

javacc 中是否有办法在检测到错误后进一步解析输入文件。我知道有几种方法,例如恐慌模式恢复,短语级别恢复等。但我不知道如何在 javacc jjt 文件中实现它。例如假设我的输入文件是

所以我想要的是在第 1 行检测到缺少分号的错误后,继续解析并在第 3 行找到错误。