Mi sono guardato intorno su Internet e ho trovato una manciata di risorse che ho messo insieme e ho trovato una soluzione per tentativi ed errori. Di seguito è riportata una guida che ho utilizzato su alcune delle mie macchine per ottenere l'installazione IDE ANTLR 4 in Eclipse. Ho pensato che avrei dovuto condividere qui e salvare gli altri la fatica di Google alla ricerca di ore (si spera)
Prerequisiti
- Eclipse 4.4 Luna xtext SDK completo (deve essere la versione 2.7.3)
- Eclipse sfaccettato progetto quadro (Testato con 3.4.0) Eclipse sfaccettato
- Progetto quadro JDT Enablement (Testato con 3.4.0) ANTLR 4 SDK Un
- Una copia della ANTLR-4.x-complete.jar (4.5 al momento della scrittura g)
Setup
- installare Eclipse
- scaricarlo da https://www.eclipse.org/downloads/
- Installare xtext 2.7.3
- Vai
Help > Install New Software...
- Inserire
http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/
nel Work With
testo
- premere invio ed attendere che l'elenco per caricare (questo richiederà alcuni istanti)
- Espandere il nodo
Xtext
e controllare Xtext Complete SDK
(assicurare la versione è 2.7.3x)
- Clicca
Next
, accettare il contratto di licenza e fare clic su Fine
- attendere il completamento di installazione e riavviare Eclipse
- Installare sfaccettato progetto quadro
- Vai
Help > Install New Software...
- Inserisci
http://download.eclipse.org/releases/luna
nel Work With
casella di testo
- Invio Immettere e attendere il caricamento dell'elenco (l'operazione richiederà alcuni minuti)
- Nella casella di testo del filtro immettere
Facet
- Selezionare
Eclipse Faceted Project Framework
e Eclipse Faceted Project Framework JDT Enablement
- Clicca
Next
, accettare il contratto di licenza e fare clic su Fine
- Lascia la finitura di installazione e riavviare Eclipse
- Installare ANTLR 4 IDE
- Vai
Help > Eclipse Marketplace...
- Cerca
antlr
- Scegli
ANTLR 4 IDE
(assicurarsi che sia ANTLR 4 IDE non ANTLR IDE)
- Fare clic su Installa
- attendere il completamento di installazione facendo clic su OK se viene richiesto e riavviare Eclipse
- ottenere una copia del ANTLR-4. x-completo.JAR
- scaricare il file da here
- Salva da qualche parte si ricorderà
Creazione di un ANTRL 4 Progetto
ho trovato la maggior parte di queste informazioni here, il resto Stavo leggendo errori e indovinando
- Vai
File > New Project > Project
- Espandere la
General Tab
selezionare ANTLR 4 Project
(se non vedi questa vedere fase 4 del programma di installazione)
- Clicca
Next
, dare un nome al progetto e fare clic su Finish
- Una volta che il progetto è completo fare clic destro del progetto e fare clic
Properties
- Vai a
Project Facets
e cliccare Convert to faceted form...
(se non vedi questa vedere il punto 3 del programma di installazione)
- Controllare la sfaccettatura
Java
progetto e fare clic su Apply
(se non vedi questa vedere il punto 3 del programma di installazione)
- Clicca
OK
, lascia che la soluzione di ricostruire, aprire le proprietà di nuovo
- Vai a
Java Build Path
, fare clic sulla scheda
- Clicca
Add Folder...
e controllo Source
Project > target > generated-sources > antlr4
, fare clic su OK
- Fare clic sulla scheda
Add External JARs...
Libraries
, trovare la vostra copia di antlr-4.x-complete.jar
, fare clic su Open
- Vai a
ANTLR 4 > Tool
, clicca Apply
se un pop-up appare
- check
Enable project specific settings
- Clicca
Add
, trovare la vostra copia di antlr-4.x-complete.jar
, clicca Open
- check
4.x
- Clicca
Apply
, clicca Yes
di ricostruire, fare clic su OK
per uscire dalle proprietà
Test
Creare una nuova classe con il seguente codice e provare a eseguire. Nella console scrivere Hello there
e Ctrl + z per inviare EOF al flusso di input
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.tree.*;
public class HelloRunner
{
public static void main(String[] args) throws Exception
{
ANTLRInputStream input = new ANTLRInputStream(System.in);
HelloLexer lexer = new HelloLexer(input);
CommonTokenStream tokens = new CommonTokenStream(lexer);
HelloParser parser = new HelloParser(tokens);
ParseTree tree = parser.r(); // begin parsing at rule 'r'
System.out.println(tree.toStringTree(parser)); // print LISP-style tree
}
}
Note
- Se viene visualizzato un errore quando si tenta di andare in
ANTLR 4 > Tool
controllare il vostro Versione di Xtext, 2.8.0 causa un errore nella finestra degli strumenti
- Al punto 8, se avete modificato l'ANTLR directory genera di fonti usano quella directory
Se si nota che la versione di ANTLR che hai aggiunto a ANTLR 4 > Tool > Distributions
scompare questo sembra per essere ok
- Controlla il tuo output di build per vedere quale strumento sta usando, dovrebbe comunque usare il JAR che hai aggiunto anche se scompare. Questo è ciò che il mio appare come:
ANTLR Tool v4.5 (C:\JavaLib\antlr-4.5-complete.jar) Hello.g4 -o C:\Users\username\workspace\project\target\generated-sources\antlr4 -listener -no-visitor -encoding UTF-8
fonte
2015-05-08 16:49:58
utilizzando la più recente xtext (2.8.2) non causa un errore. – CoronA
Questo è quello che ho letto ma sono abbastanza sicuro di avere 2.8.2 e ha causato problemi nel menu delle impostazioni, ma ha funzionato ovunque altrove –
ho avuto 2.8.0 e non è riuscito, aggiornato alla 2.8.2 e ha funzionato. – CoronA