编辑“︁
JavaCC
”︁
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
{{Infobox software | name = JavaCC | logo = | screenshot = | caption = | developer = JavaCC开发团队 | latest release version = 7.0.3 | latest release date = {{release date and age|2017|9|22}}<ref>{{Cite web |url=https://github.com/javacc/javacc/releases |title=JavaCC源代码库Release页面 |accessdate=2018-07-11 |archive-date=2020-10-14 |archive-url=https://web.archive.org/web/20201014024848/https://github.com/javacc/javacc/releases |dead-url=no }}</ref> | programming language = [[Java]] | operating system = | platform = [[Java虚拟机]] | license = [[BSD license|BSD]] | website = {{URL|javacc.org}} | repo = {{URL|https://github.com/javacc/javacc}} }} '''JavaCC'''('''Java''' '''C'''ompiler '''C'''ompiler)是一个开源的[[语法分析器]]生成器和[[词法分析器]]生成器。JavaCC根据输入的文法生成由[[Java]]语言编写的分析器。 和[[YACC]]类似,JavaCC根据由[[EBNF]]格式撰写的[[形式文法]]生成语法分析器。不同的是,JavaCC生成的是自顶向下语法分析器,由于可以向前搜寻k个字符,所以可以用来分析[[LL分析器|LL(k)文法]]。同时,JavaCC生成词法分析器的方式和[[Lex]]也很像。<ref>{{cite web|url=https://javacc.org/features|title=JavaCC网站Feature页面|accessdate=2018-07-11|archive-date=2018-07-11|archive-url=https://web.archive.org/web/20180711095125/https://javacc.org/features|dead-url=no}}</ref> 另外,JavaCC还提供JJTree等辅助工具帮助使用者构建[[语法树]]。 == 历史 == 在1996年,[[Sun Microsystems]]推出了一个名叫“Jack”的语法解析器生成器。后来,负责“Jack”的开发者创办了自己的公司——[[Metamata]],并将“Jack”改名为“JavaCC”。Metamata最后成为了[[WebGain公司|WebGain]]的一部分,在WebGain关闭后,JavaCC才移动到了现在的主页。 == 使用 == 使用JavaCC构建的软件: * [[Apache Derby]] * [[BeanShell]] * [[FreeMarker]] * [[PMD (software)|PMD]] * [[Vaadin]] * [[Apache Lucene]]<ref>{{Cite web|url=https://lucene.apache.org/core/4_0_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html|title=Lucene 4.0.0 queryparser类 API|accessdate=2018-07-11|archive-date=2020-01-27|archive-url=https://web.archive.org/web/20200127175314/http://lucene.apache.org/core/4_0_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html|dead-url=no}}</ref> * [[JavaParser]] == 另见 == {{Portal|Free software}} *[[ANTLR]] *[[SableCC]] *[[Coco/R]] *[[Parboiled (Java)|parboiled]] == 外部链接 == [http://www.engr.mun.ca/~theo/JavaCC-FAQ/javacc-faq-moz.htm JavaCC FAQ] {{Wayback|url=http://www.engr.mun.ca/~theo/JavaCC-FAQ/javacc-faq-moz.htm |date=20200806103934 }} == 参考 == {{references}} [[Category:Java平台軟體]] [[Category:编译器软件]]
摘要:
请注意,所有对Local Chinese Wikipedia的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Project:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
大陆简体
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息