2015-05-08 2 views
13

Я пытаюсь установить ANTLR 4 IDE на Eclipse Luna (4.4). Я установил его с Marketplace, но я понятия не имею, как создать проект, в котором есть ANTLR 4 Lexer/Parser.Устранение неполадок ANTLR 4 IDE на Eclipse Luna (4.4)

Когда я иду для создания нового проекта, я не вижу никаких параметров для ANTLR 4. Я попытался создать файл .g4, и он открывается в редакторе, но когда я его сохраняю, он ничего не делает.

ответ

27

Я огляделся по всему Интернету и нашел несколько ресурсов, которые я собрал вместе и нашел решение путем проб и ошибок. Ниже приведено руководство, которое я использовал на нескольких моих машинах для установки ANTLR 4 IDE в Eclipse. Я полагал, что я должен поделиться этим здесь и спасти другие неприятности поиска Google в течение нескольких часов (надеюсь)

Предпосылки

  • Затмение 4,4 Luna XText Полного SDK (должен быть версии 2.7.3)
  • Eclipse, Грановитая рамки проекта (Испытано с 3.4.0) Затмение граненное
  • проекта рамки JDT Enablement (Испытано с 3.4.0) ANTLR 4 SDK
  • копия Antlr-4.х-complete.jar (4,5 на момент написания статьи г)

Настройка

  1. Установка Eclipse,
    1. Загрузить его можно с https://www.eclipse.org/downloads/
  2. Установите XText 2.7.3
    1. Перейти к Help > Install New Software...
    2. Введите http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/ в Work With текстовом поле
    3. Hit Enter и ждать список для загрузки (это может занять несколько минут)
    4. Разверните узел Xtext и проверить Xtext Complete SDK (убедитесь, что версия 2.7.3x) ​​
    5. Нажмите Next, согласен с лицензионным соглашением и нажмите кнопку завершения
    6. Пусть закончить установки и перезапустить Eclipse,
  3. Установка Грановитой Framework Project
    1. Перейти к Help > Install New Software...
    2. Введите http://download.eclipse.org/releases/luna в Work With textbox
    3. Hit Введите и дождитесь загрузки списка (это займет несколько минут)
    4. В текстовом поле Фильтр введите Facet
    5. Выберите Eclipse Faceted Project Framework и Eclipse Faceted Project Framework JDT Enablement
    6. Нажмите Next, согласен с лицензионным соглашением и нажмите кнопку завершения
    7. Пусть закончить установки и перезапустить Eclipse,
  4. Установка ANTLR 4 IDE
    1. Перейти к Help > Eclipse Marketplace...
    2. Поиск antlr
    3. Выберите ANTLR 4 IDE (убедитесь, что это ANTLR 4 IDE не ANTLR IDE)
    4. Нажмите кнопку Установить
    5. Пусть финишная Установщик нажав ОК, если он попросит и перезапустить Eclipse,
  5. Получить копию ANTLR-4. х-полной.баночка
    1. Скачать файл из here
    2. Сохранить это где-то вы будете помнить

Создание ANTRL 4 Спроецируйте

Я нашел большую часть этой информации here, остальное был ошибки чтения и гадание

  1. Перейти к File > New Project > Project
  2. Разверните General Tab и выберите ANTLR 4 Project (если вы не видите это смотрите шаг 4 из установки)
  3. Нажмите Next, дать проекту имя и нажмите Finish
  4. После проекта полный правой кнопкой мыши проект и нажмите Properties
  5. Перейти к Project Facets и нажмите Convert to faceted form... (если вы не видите в этом см шаге 3 установки)
  6. Проверьте фаску Java проекта и нажмите Apply (если вы не видите в этом см шаге 3 установки)
  7. Нажмите OK, пусть решение восстановить, откройте свойства снова
  8. Перейти к Java Build Path, выберите вкладку Source
  9. Нажмите кнопку Add Folder... и проверки Project > target > generated-sources > antlr4, нажмите OK
  10. выберите вкладку Libraries
  11. Add External JARs..., найти свою копию antlr-4.x-complete.jar, нажмите Open
  12. Перейти к ANTLR 4 > Tool, нажмите Apply если всплывающее окно
  13. Проверить Enable project specific settings
  14. Нажмите Add, найти свою копию antlr-4.x-complete.jar, нажмите Open
  15. Проверить 4.x
  16. Нажмите Apply, нажмите Yes для восстановления, нажмите OK для выхода из свойств

Тест

Создайте новый класс со следующим кодом и попробуйте запустить. В консоли написать Hello there и Ctrl + г отправить EOF входной поток

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 
    } 
} 

Notes

  1. Если вы видите ошибку при попытке зайти в ANTLR 4 > Tool проверить ваши Xtext версия, 2.8.0 приводит к ошибке в окне инструмента
  2. На шаге 8, если вы изменили ANTLR каталог генерирует это источники использовать этот каталог
  3. Если вы заметили, что версия ANTLR вы добавили к ANTLR 4 > Tool > Distributions исчезает это кажется было бы хорошо

    • Проверьте свой вывод сборки, чтобы увидеть, какой инструмент он использует, он все равно должен использовать добавленный JAR, даже если он исчезнет. Это то, что мое выглядит следующим образом:

    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

+0

с использованием новейших XText (2.8.2) не приведет к ошибке. – CoronA

+0

Это то, что я читал, но я уверен, что у меня было 2.8.2, и это вызвало проблемы в меню настроек, но работало везде. –

+0

У меня было 2.8.0, и это не удалось, обновлено до 2.8.2, и это сработало. – CoronA

Смежные вопросы