Rozglądałem się po Internecie i znalazłem garść zasobów, które skleciłem razem i znalazłem rozwiązanie metodą prób i błędów. Poniżej znajduje się przewodnik, którego użyłem na kilku moich maszynach, aby uzyskać konfigurację ANTLR 4 IDE w środowisku Eclipse. Pomyślałem powinienem to zrobić tutaj i ratować innych kłopotów z Google szukając godzin (miejmy nadzieję)
wstępne
- Eclipse 4.4 Luna Xtext Kompletna SDK (musi być w wersji 2.7.3)
- Eclipse fasetkowy ramowa Project (Testowane 3.4.0) Eclipse fasetkowy
- Projekt ramowa JDT Enablement (Testowane 3.4.0) ANTLR 4 SDK
- kopia antlr-4.x-complete.jar (4,5 w czasie pisania g)
Konfiguracja
- Instalacja Eclipse
- Pobierz go z https://www.eclipse.org/downloads/
- Install XText 2.7.3
- Przejdź do
Help > Install New Software...
- Wprowadź
http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/
w Work With
textbox
- naciśnij Enter i poczekaj na załadowanie listy (to zajmie kilka chwil)
- Rozwiń węzeł
Xtext
i sprawdzić Xtext Complete SDK
(upewnij się, że wersja 2.7.3x)
- Kliknij
Next
, zgodzić się na EULA, i kliknij przycisk Zakończ
- Niech wykończenie instalatora i uruchom ponownie Eclipse
- Install obliczach ramy projektu
- Przejdź do
Help > Install New Software...
- Wprowadź
http://download.eclipse.org/releases/luna
w Work With
textbox
- Hit Wejdź i poczekaj na załadowanie listy (zajmie to kilka chwil)
- W polu filtra wpisać
Facet
- Wybierz
Eclipse Faceted Project Framework
i Eclipse Faceted Project Framework JDT Enablement
- Kliknij
Next
, zgodzić się na EULA, i kliknij przycisk Zakończ
- Niech wykończenie instalatora i uruchom ponownie Eclipse
- Install ANTLR 4 IDE
- idź do
Help > Eclipse Marketplace...
- Szukaj
antlr
- Wybierz
ANTLR 4 IDE
(upewnij się, że to ANTLR 4 IDE nie ANTLR IDE)
- Kliknij Zainstaluj
- Niech wykończenie instalator klikając OK, jeśli to poprosi i ponownie Eclipse
- otrzymać kopię antlr-4. x-complete.jar
- Pobierz plik z here
- zapisać go gdzieś będziesz pamiętać
Tworzenie Planu ANTRL 4 projektu
znalazłem większość tych informacji here, reszta odczytywanie błędów i zgadywanie
- idź do
File > New Project > Project
- Rozwiń
General Tab
i wybierz ANTLR 4 Project
(jeśli nie widzisz tego patrz krok 4 z Setup)
- Kliknij
Next
, dać projektowi nazwę i kliknij Finish
- Kiedy projekt jest kompletny projekt prawym przyciskiem myszy i kliknij
Properties
- Przejdź do
Project Facets
i kliknij Convert to faceted form...
(jeśli nie widzisz tego patrz krok 3 z konfiguracji)
- Sprawdź aspekt
Java
projektu i kliknij Apply
(jeśli nie widzisz tego patrz krok 3 z Setup)
- Kliknij
OK
, niech rozwiązanie odbudować, otwórz właściwości ponownie
- Przejdź do
Java Build Path
kliknij kartę
- Kliknij
Add Folder...
i wyboru Source
Project > target > generated-sources > antlr4
, kliknij OK
- Kliknij kartę
Add External JARs...
Libraries
, znajdź swój egzemplarz antlr-4.x-complete.jar
, kliknij Open
- Idź do
ANTLR 4 > Tool
, kliknij Apply
czy pop-up pojawia
- Sprawdź
Enable project specific settings
- Kliknij
Add
, znajdź swój egzemplarz antlr-4.x-complete.jar
, kliknij Open
- Sprawdź
4.x
- Kliknij
Apply
, kliknij Yes
odbudować, kliknij OK
do opuszczenia właściwości
Test
Utwórz nową klasę za pomocą następującego kodu i spróbuj uruchomić. W konsoli napisać Hello there
i Ctrl + Z wysłać EOF do strumienia wejściowego
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
}
}
Notatki
- Jeśli widzisz błąd podczas próby, aby przejść do
ANTLR 4 > Tool
sprawdzić swoje Wersja Xtext, 2.8.0 powoduje błąd w oknie narzędzia
- w kroku 8, jeśli zmieniliśmy ANTLR katalogów Generuje za źródła wykorzystać ten katalog
Jeśli zauważysz, że wersja antlr dodanych do ANTLR 4 > Tool > Distributions
znika wydaje być ok
- Sprawdź dane wyjściowe kompilacji, aby zobaczyć, jakiego narzędzia używasz. Powinno nadal używać dodanego JARu, nawet jeśli zniknie. To właśnie kopalnia wygląda następująco:
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
użyciu najnowszej XText (2.8.2) nie spowoduje błąd. – CoronA
To jest to, co czytam, ale jestem prawie pewien, że miałem 2.8.2 i to powodowało problemy w menu ustawień, ale działało wszędzie. –
Miałem 2.8.0 i nie, zaktualizowałem do wersji 2.8.2 i działało. – CoronA