Ricerca…


Osservazioni

ANTLR v4 è un potente strumento utilizzato per creare nuovi linguaggi di programmazione e per elaborare / tradurre file di testo strutturato o binari. ANTLR usa una grammatica creata per generare un parser che può costruire e attraversare un albero di analisi (o albero di sintassi astratto, AST). Il parser è costituito da file di output in una lingua di destinazione specificata dall'utente. ANTLR v4 supporta diversi obiettivi tra cui: Java, C #, JavaScript, Python2 e Python3. Si sta lavorando su supporto per C ++. Per lavorare con gli IDE della GUI, esistono plug-in per Visual Studio, Intellij, NetBeans ed Eclipse.

Per informazioni generali, visitare il sito Web ANTLR . Per fare sul serio su ANTLR, controlla il libro altamente raccomandato scritto da Terrence Parr (il tizio che ha creato ANTLR) The Definitive ANTLR 4 Reference .


Informazioni sulla versione significative

  • 4.5: 22/01/15 - Aggiunta la destinazione JavaScript e il target C # aggiornato. 4.5 Note di rilascio
  • 4.4: 16/07/2014 - Aggiunti Python2 e Python3 come obiettivi. 4.4 Note di rilascio
  • 4.3: 18/06/14 - Correzioni di errori importanti; preparato per aggiungere nuovi obiettivi. 4.3 Note di rilascio
  • 4.2: 02/04/14 - Sintassi migliorata per la selezione / corrispondenza degli alberi di analisi. 4.2 Note di rilascio
  • 4.1: 30/06/13 - Prestazioni di parsing migliorate; esportare AST in PNG. 4.1 Note di rilascio
  • 4.0: 21/01/13 - Versione iniziale.

Installazione per l'utilizzo della riga di comando

ANTLR è distribuito come un file Java Jar Può essere scaricato qui . Poiché ANTLR è compilato come un file jar, richiede in seguito che l'ambiente di runtime Java funzioni, se non lo si possiede può essere scaricato qui .

Una volta scaricato il file JAR ANTLR, è possibile eseguire ANTLR dalla riga di comando allo stesso modo di qualsiasi altro file JAR:

Java -jar antlr-4.5.3-complete.jar

(Supponendo che tu stia operando nella stessa directory del file antlr-4.5.3-complete.jar).

Questo dovrebbe produrre qualcosa di simile a questo:

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

altre azioni consigliate per l'installazione includono:

     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 %*

Dopo l'installazione puoi creare un'applicazione usando il tuo file grammaticale .g4:

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

È inoltre possibile creare un'applicazione in altre lingue con il parametro -Dlanguage. Ad esempio per generare file C # si dovrebbe fare qualcosa del genere:

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

Vedi qui per l'elenco completo delle grammatiche pre-fatte per i linguaggi di programmazione comuni.

Installazione utilizzando gli strumenti di automazione di Build

Scarica l' ultima versione di ANTLR ed estraila in una cartella.

Puoi utilizzare anche Maven, Gradle o altri strumenti di compilazione per dipendere dal suo runtime (le classi utilizzate dalle grammatiche generate): org.antlr:antlr4-runtime .

Per poter automaticamente - come parte del processo di compilazione - generare il parser in un progetto maven, utilizzare il plugin Maven : org.antlr:antlr4 .

Installa in Eclipse e Crea Hello World

(Testato con ANTLR 4.5.3, Eclipse Neon, ANTLR 4 IDE 0.3.5 e Java 1.8)

  1. Scarica l'ultimo ANTLR . Assicurati di ottenere il barattolo di binari Java ANTLR completo. Salva in qualsiasi posizione appropriata, ad esempio la cartella in cui sono archiviate altre librerie Java. Non importa dove, ricorda solo la posizione.
  1. Installa l'ID ANTLR in Eclipse.

    • Dal menu di Eclipse, fare clic su Guida e selezionare Marketplace di Eclipse.
    • Nella casella Trova: digitare antlr e fare clic su Vai.
    • Fare clic su Installa per ANTLR 4 IDE.
    • Fare clic su Fine nella finestra Conferma funzioni selezionate.
    • Se viene visualizzata una finestra di avviso di sicurezza, fare clic su OK.
    • Riavvia Eclipse.
  2. Ovviare all'errore "Impossibile creare l'iniettore ...".

    • Quando si accede a ANTLR 4 Preferences in Eclipse o quando la variabile di ambiente HOME non è impostata, si verifica il seguente errore: Impossibile creare injector per com.github.jknack.antlr-4ide.Antlr4 per com.github.jknack.antlr-4ide.Antlr4 .
    • Assicurati che la variabile d'ambiente HOME sia impostata. In caso contrario, impostalo come appropriato per il tuo sistema.
    • Scarica Xtext 2.7.3 nella stessa posizione di antlr-nnn-complete.jar.
    • In Eclipse, fare clic su Guida e selezionare Installa nuovo software.
    • Fare clic su Aggiungi ... per accedere alla finestra Aggiungi repository.
    • Digitare un nome, ad esempio xtext 2.7.3, quindi fare clic su Archivia ..., accedere al file Xtext 2.7.3 e selezionarlo, quindi fare clic su OK.
    • Nella finestra di installazione, fare clic sul pulsante Seleziona tutto, quindi fare clic su Avanti> due volte, accettare il contratto di licenza. e fare clic su Fine.
    • Riavvia Eclipse.
  3. Dillo a Eclipse / Java dove è ANTLR.

    • In Eclipse, fai clic su Finestra e seleziona Preferenze.
    • Nel riquadro sinistro, espandere Java e Build Path, quindi selezionare Classpath Variables.
    • Nel riquadro destro, fai clic su Nuovo ..., inserisci un Nome e fai clic su File ... e vai alla posizione di antlr-nnn-complete.jar. Fare clic su OK per tornare alla finestra Variabili di Classpath.
    • Fare clic su OK per uscire da Preferenze.
  4. (Facoltativo) Configurare la directory delle fonti generate da ANTLR IDE.

    • Nella finestra principale di Eclipse, fai clic su Finestra quindi su Preferenze.
    • Nel riquadro sinistro, espandere ANTLR 4 e selezionare Strumento.
    • Sotto Opzioni, cambia la directory se lo desideri. Ad esempio, java è la mia lingua di destinazione, quindi uso ./antlr-java.
    • Fare clic su OK per chiudere la finestra delle preferenze.
  5. Creare un progetto ANTLR 4.

    • Dalla finestra principale di Eclipse, vai su File, Nuovo, Progetto.
    • Nella finestra Nuovo progetto, espandere Generale e selezionare Progetto ANTLR 4.
    • Fare clic su Avanti, digitare un nome per il progetto e fare clic su Fine.
    • Il nuovo progetto predefinito contiene un file Hello.g4 e creerà automaticamente il programma standard "Hello World".
    • Nell'Explorer del pacchetto, espandi la nuova cartella del progetto per visualizzare il file g4 e una cartella denominata destinazione (o il nome che hai assegnato al passaggio 5) contenente i file di origine di destinazione.

Installazione di ANTLR in Visual Studio 2015 (usando Nuget)

  1. Aprire Visual Studio 2015, accedere a Strumenti → Estensioni → Online e cercare Antlr. Scarica l'estensione ANTLR Language Support (Creato da Sam Harwell) e riavvia Visual Studio.
  2. Crea un nuovo progetto di applicazione console. Fare clic con il tasto destro del mouse su Soluzione → Gestisci pacchetti Nuget per soluzione → Sfoglia (Tab) e cerca Antlr4 e installalo. Antlr4 Nuget
  3. Aggiungi un nuovo elemento al tuo progetto facendo clic con il tasto destro su di esso. E cerca i modelli ANTLR4. Modelli Antlr4
  4. Dal tuo file ANTLR (che termina .g4) vai su File → Opzioni di salvataggio avanzate e cerca Unicode (UTF-8 senza firma ) - Codepage 65001 e fai clic su OK. Questo è tutto. Opzioni avanzate di salvataggio di Antlr

Verifica se tutto funziona

  • Creare un oggetto Grammatica combinata ANTLR 4 e denominarlo Calcolatrice.g4
  • Copia e incolla il codice sorgente del Calcolatore da questo progetto Github qui: Calcolatrice di Tom Everett
  • Cambia il calcolatore di grammatica in Calcolatrice grammaticale
  • In Esplora soluzioni → Fare clic su Mostra tutti i file.
    Solution Explorer Mostra tutti i file
  • Salva ed esegui (Start) il progetto
  • In Solution Explorer nella cartella obj dovresti vedere le classi cs generate come Visitor e Listener. Se questo è il caso, ci sei riuscito. Ora puoi iniziare a lavorare con ANTLR in Visual Studio 2015. Classi generate da ANTLR


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow