Zoeken…


Opmerkingen

ANTLR v4 is een krachtig hulpmiddel dat wordt gebruikt voor het bouwen van nieuwe programmeertalen en het verwerken / vertalen van gestructureerde tekst- of binaire bestanden. ANTLR gebruikt een grammatica die u maakt om een parser te genereren die een parse-boom (of abstracte syntax-boom, AST) kan bouwen en doorlopen. De parser bestaat uit uitvoerbestanden in een door u opgegeven doeltaal. ANTLR v4 ondersteunt verschillende doelen, waaronder: Java, C #, JavaScript, Python2 en Python3. Er wordt gewerkt aan ondersteuning voor C ++. Voor het werken in GUI IDE's zijn er plug-ins voor Visual Studio, Intellij, NetBeans en Eclipse.

Voor algemene informatie, bezoek de ANTLR-website . Om serieus te worden over ANTLR, bekijk het sterk aanbevolen boek geschreven door Terrence Parr (de man die ANTLR heeft gemaakt) The Definitive ANTLR 4 Reference .


Aanzienlijke versie-informatie

Installeren voor gebruik via opdrachtregel

ANTLR wordt verspreid als een Java Jar bestand Het kan worden gedownload hier . Zoals ANTLR wordt samengesteld als een jar bestand dat het vervolgens vereist dat de Java runtime-omgeving te werken, als je het niet hebt Het kan worden gedownload hier .

Nadat het ANTLR JAR-bestand is gedownload, kunt u ANTLR vanaf de opdrachtregel op dezelfde manier uitvoeren als elk ander JAR-bestand:

Java -jar antlr-4.5.3-complete.jar

(Ervan uitgaande dat u in dezelfde map werkt als het bestand antlr-4.5.3-complete.jar).

Dit zou ongeveer zoiets moeten opleveren:

ANTLR Parser Generator  Version 4.5.3
 -o ___              specify output directory where all output is generated
 -lib ___            specify location of grammars, tokens files
 -atn                generate rule augmented transition network diagrams
 -encoding ___       specify grammar file encoding; e.g., euc-jp
 -message-format ___ specify output style for messages in antlr, gnu, vs2005
 -long-messages      show exception details when available for errors and warnings
 -listener           generate parse tree listener (default)
 -no-listener        don't generate parse tree listener
 -visitor            generate parse tree visitor
 -no-visitor         don't generate parse tree visitor (default)
 -package ___        specify a package/namespace for the generated code
 -depend             generate file dependencies
 -D<option>=value    set/override a grammar-level option
 -Werror             treat warnings as errors
 -XdbgST             launch StringTemplate visualizer on generated code
 -XdbgSTWait         wait for STViz to close before continuing
 -Xforce-atn         use the ATN simulator for all predictions
 -Xlog               dump lots of logging info to antlr-timestamp.log

andere aanbevolen acties voor installatie zijn onder meer:

     1. Add antlr4-complete.jar to CLASSPATH, either: Permanently: 
Using System Properties dialog > Environment variables > Create or append to CLASSPATH variable Temporarily, at command line: SET CLASSPATH=.;C:\Javalib\antlr4-complete.jar;%CLASSPATH% 
     3.Create batch commands for ANTLR Tool, TestRig in dir in PATH
         antlr4.bat: java org.antlr.v4.Tool %*
         grun.bat:   java org.antlr.v4.gui.TestRig %*

Na de installatie kunt u een applicatie bouwen met uw .g4 grammaticabestand:

Java -jar antlr-4.5.3-complete.jar yourGrammar.g4

U kunt ook een applicatie in andere talen bouwen met de parameter -Dlanguage. Als u bijvoorbeeld C # -bestanden wilt genereren, zou u zoiets doen:

java -jar antlr-4.5.3-complete.jar yourGrammar.g4 -Dlanguage=CSharp

Zie hier voor een volledige lijst van vooraf gemaakte grammatica's voor veelgebruikte programmeertalen.

Installeren met behulp van Build Automation-tools

Download de nieuwste versie van ANTLR en pak deze uit in een map.

Je kunt ook Maven, Gradle of een ander org.antlr:antlr4-runtime gebruiken om afhankelijk te zijn van de runtime (de klassen die de gegenereerde grammatica's gebruiken): org.antlr:antlr4-runtime .

Om automatisch - als onderdeel van het bouwproces - de parser in een maven-project te genereren, gebruikt u de Maven-plug-in : org.antlr:antlr4 .

Installeer in Eclipse en bouw Hello World

(Getest met ANTLR 4.5.3, Eclipse Neon, ANTLR 4 IDE 0.3.5 en Java 1.8)

  1. Download de nieuwste ANTLR . Zorg ervoor dat je de volledige ANTLR Java binaries-pot krijgt. Opslaan op elke geschikte locatie, bijvoorbeeld de map waarin andere Java-bibliotheken zijn opgeslagen. Het maakt niet uit waar, onthoud gewoon de locatie.
  1. Installeer de ANTLR IDE in Eclipse.

    • Klik in het menu Eclipse op Help en selecteer Eclipse Marketplace.
    • Typ antlr in het vak Zoeken: en klik op Ga.
    • Klik op Installeren voor ANTLR 4 IDE.
    • Klik op Voltooien in het venster Geselecteerde functies bevestigen.
    • Als een beveiligingswaarschuwingsvenster verschijnt, klikt u op OK.
    • Start Eclipse opnieuw.
  2. Werk rond voor de fout 'Kan injector niet maken ...'.

    • Bij toegang tot ANTLR 4-voorkeuren in Eclipse of wanneer de omgevingsvariabele HOME niet is ingesteld, treedt de volgende fout op: kan geen injector voor com.github.jknack.antlr-4ide.Antlr4 voor com.github.jknack.antlr-4ide.Antlr4 maken .
    • Zorg ervoor dat de omgevingsvariabele HOME is ingesteld. Als dit niet het geval is, stelt u deze in op uw systeem.
    • Download Xtext 2.7.3 naar dezelfde locatie als antlr-nnn-complete.jar.
    • Klik in Eclipse op Help en selecteer Nieuwe software installeren.
    • Klik op Toevoegen ... om naar het venster Repository toevoegen te gaan.
    • Typ een naam, bijvoorbeeld xtext 2.7.3, klik vervolgens op Archiveren ..., navigeer naar het Xtext 2.7.3-bestand en selecteer het en klik vervolgens op OK.
    • Klik in het venster Installeren op Alles selecteren en klik vervolgens op Volgende> tweemaal, accepteer de licentieovereenkomst. en klik op Voltooien.
    • Start Eclipse opnieuw.
  3. Vertel Eclipse / Java waar ANTLR is.

    • Klik in Eclipse op Venster en selecteer Voorkeuren.
    • Vouw in het linkerdeelvenster Java en Build Path uit en selecteer vervolgens Classpath-variabelen.
    • Klik in het rechterdeelvenster op Nieuw ..., voer een naam in en klik op Bestand ... en blader naar uw locatie van antlr-nnn-complete.jar. Klik op OK om terug te gaan naar het venster Classpath-variabelen.
    • Klik op OK om Voorkeuren af te sluiten.
  4. (Optioneel) Configureer de door ANTLR IDE gegenereerde bronnenmap.

    • Klik in het hoofdvenster van Eclipse op Venster en vervolgens op Voorkeuren.
    • Vouw ANTLR 4 in het linkerdeelvenster uit en selecteer Tool.
    • Wijzig onder Opties desgewenst de map. Java is bijvoorbeeld mijn doeltaal, dus ik gebruik ./antlr-java.
    • Klik op OK om het venster Voorkeuren te sluiten.
  5. Maak een ANTLR 4-project.

    • Ga vanuit het hoofdvenster van Eclipse naar Bestand, Nieuw, Project.
    • Vouw Algemeen uit in het venster Nieuw project en selecteer ANTLR 4-project.
    • Klik op Volgende, typ een projectnaam en klik op Voltooien.
    • Het standaard nieuwe project bevat een Hello.g4-bestand en bouwt automatisch het standaardprogramma "Hello World" op.
    • Vouw in de Pakketverkenner de nieuwe projectmap uit om het g4-bestand te zien en een map met de naam target (of de naam die u in stap 5 hebt gegeven) die de doelbronbestanden bevat.

ANTLR installeren in Visual Studio 2015 (met Nuget)

  1. Open Visual Studio 2015, ga naar Extra → Extensies → Online en zoek naar Antlr. Download de extensie ANTLR Language Support (gemaakt door Sam Harwell) en start Visual Studio opnieuw.
  2. Maak een nieuw console-toepassingsproject. Klik met de rechtermuisknop op de oplossing → Nuget-pakketten beheren voor oplossing → Bladeren (tabblad) en zoek naar Antlr4 en installeer het. Antlr4 Nuget
  3. Voeg een nieuw item toe aan uw project door er met de rechtermuisknop op te klikken. En zoek naar ANTLR4-sjablonen. Antlr4-sjablonen
  4. Ga vanuit uw ANTLR-bestand (eindigend op .g4) naar Bestand → Opties voor geavanceerde opslag en zoek naar Unicode (UTF-8 zonder handtekening ) - Codepagina 65001 en klik op OK. Dat is het. Antlr Geavanceerde opslagopties

Test of alles werkt

  • Maak een ANTLR 4 gecombineerd grammatica-item en noem het Calculator.g4
  • Kopieer en plak de Calculator-broncode van dit Github-project hier: Calculator door Tom Everett
  • Verander grammatica calculator naar grammatica Calculator
  • Op Solution Explorer → Klik op Alle bestanden weergeven.
    Solution Explorer Alle bestanden weergeven
  • Sla het project op en voer het uit
  • In Solution Explorer onder de map obj ziet u cs-klassen gegenereerd zoals de bezoeker en luisteraar. Als dit het geval is, is het je gelukt. Nu kunt u beginnen met werken met ANTLR in Visual Studio 2015. ANTLR gegenereerde klassen


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow