| CARVIEW |
Select Language
HTTP/2 200
date: Fri, 23 Jan 2026 16:50:42 GMT
server: mw-web.codfw.main-6bb766b74f-dpwvc
x-content-type-options: nosniff
content-language: de
accept-ch:
content-security-policy-report-only: script-src 'unsafe-eval' blob: 'self' meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org 'unsafe-inline' auth.wikimedia.org; default-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org en.wikibooks.org en.wikinews.org en.wikiquote.org en.wikisource.org en.wikiversity.org en.wikivoyage.org en.wiktionary.org www.mediawiki.org api.wikimedia.org commons.wikimedia.org foundation.wikimedia.org incubator.wikimedia.org species.wikimedia.org wikimania.wikimedia.org www.wikidata.org www.wikifunctions.org auth.wikimedia.org; style-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org 'unsafe-inline'; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json&reportonly=1
last-modified: Fri, 09 Jan 2026 16:50:42 GMT
content-type: text/html; charset=UTF-8
content-encoding: gzip
age: 1
accept-ranges: bytes
x-cache: cp5017 miss, cp5017 miss
x-cache-status: miss
server-timing: cache;desc="miss", host;desc="cp5017"
strict-transport-security: max-age=106384710; includeSubDomains; preload
report-to: { "group": "wm_nel", "max_age": 604800, "endpoints": [{ "url": "https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0" }] }
nel: { "report_to": "wm_nel", "max_age": 604800, "failure_fraction": 0.05, "success_fraction": 0.0}
set-cookie: WMF-Last-Access=23-Jan-2026;Path=/;HttpOnly;secure;Expires=Tue, 24 Feb 2026 12:00:00 GMT
set-cookie: WMF-Last-Access-Global=23-Jan-2026;Path=/;Domain=.wikipedia.org;HttpOnly;secure;Expires=Tue, 24 Feb 2026 12:00:00 GMT
set-cookie: WMF-DP=a49;Path=/;HttpOnly;secure;Expires=Sat, 24 Jan 2026 00:00:00 GMT
x-client-ip: 134.209.151.76
cache-control: private, s-maxage=0, max-age=0, must-revalidate, no-transform
vary: Accept-Encoding,X-Subdomain,Cookie,Authorization,User-Agent
set-cookie: GeoIP=IN:KA:Bengaluru:12.98:77.59:v4; Path=/; secure; Domain=.wikipedia.org
set-cookie: NetworkProbeLimit=0.001;Path=/;Secure;SameSite=None;Max-Age=3600
set-cookie: WMF-Uniq=TMncc1YrJ-82mXA5qNjQkALxAAAAAFvdkpKeGGZzSFQTQCYpHGVar93ebf6m46vu;Domain=.wikipedia.org;Path=/;HttpOnly;secure;SameSite=None;Expires=Sat, 23 Jan 2027 00:00:00 GMT
x-request-id: e7b1647a-df2d-4a3a-8ff6-5bfd7c76fbb8
x-analytics:
JavaCC – Wikipedia
Zum Inhalt springen
JavaCC
Werkzeuge
Allgemein
Drucken/exportieren
In anderen Projekten
Erscheinungsbild
aus Wikipedia, der freien Enzyklopädie
| JavaCC | |
|---|---|
| Basisdaten
| |
| Aktuelle Version | 7.0.13[1] (18. November 2023) |
| Betriebssystem | Betriebssysteme mit Java-Laufzeitumgebung |
| Programmiersprache | Java |
| Kategorie | Parsergenerator |
| Lizenz | BSD-Lizenz |
| www.javacc.org | |
JavaCC (Java Compiler Compiler) ist ein Lexer- und Parsergenerator, der in Java implementiert ist und als Ausgabe Java- und C++-Quellcode erzeugt.[2] JavaCC ist Open Source und unter den Bedingungen der BSD-Lizenz herausgegeben.
JavaCC funktioniert ähnlich wie das bekannte Programm Yacc, benutzt aber ein anderes Verfahren zum Parsen der Daten: JavaCC erzeugt einen LL(k)-Parser, während Yacc einen LALR(1)-Parser erzeugt. Die Grammatik muss also etwas anders strukturiert sein, als dies bei Yacc der Fall wäre.
Programme und Bibliotheken, die intern JavaCC verwenden
[Bearbeiten | Quelltext bearbeiten]- Das Open-Source Suchmaschinen-Framework Lucene nutzt JavaCC zur Generierung des Lexers und des Query-Parsers.[3]
- Die Open-Source Template-Engine Velocity greift für seine Parserfunktionen auf JavaCC zurück.[4]
- Das zur statischen Codeanalyse von Quelltexten genutzte Werkzeug PMD verwendet zur Verarbeitung der benutzerdefinierten Regeln intern JavaCC.[5]
- Das Java-API des Ontologie-Projekts Cyc greift für seine Parserfunktionen auf JavaCC zurück.
Siehe auch
[Bearbeiten | Quelltext bearbeiten]- JFlex (in Java geschriebener Scanner-Generator für Java)
- SableCC (Compiler-Compiler für LALR(1)-Parser in Java)
- ANTLR (Compiler-Compiler für LL(*)-Parser in verschiedenen Zielsprachen)
- Coco/R (Compiler-Compiler für LL(k)-Parser in verschiedenen Zielsprachen)
Literatur
[Bearbeiten | Quelltext bearbeiten]- Tom Copeland: Generating Parsers with JavaCC. 2. Auflage. Centennial Books, Alexandria, 2009, ISBN 978-0-9762214-3-2.
- Anthony J. Dos Reis, Laura L. Dos Reis: Compiler Construction Using Java, JavaCC, and Yacc. 1. Auflage. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7.
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Release 7.0.13. 18. November 2023 (abgerufen am 18. November 2023).
- ↑ JavaCC Announce Mailinglist on Java.net. Archiviert vom Original (nicht mehr online verfügbar) am 11. April 2016; abgerufen am 9. September 2013 (englisch).
- ↑ Apache Lucene package documentation. Abgerufen am 9. September 2013 (englisch).
- ↑ The Apache Velocity project – Required Tools. Abgerufen am 9. September 2013 (englisch).
- ↑ Customizing PMD – How to write a PMD rule. Abgerufen am 9. September 2013 (englisch).
JavaCC