Настройка Eclipse для компиляции Haskell с плагином EclipseFP
Я только что установил плагин EclipseFP в свою настройку Eclipse (в Windows 7 32bit, если это имеет значение), следуя инструкциям. Затем я следовал инструкциям в справочной документации по Eclipse, чтобы создать Hello World
Проект успешно
Тем не менее, я вполне уверен, что что-то не так, хотя я не могу понять, что. Прежде всего, нет подсветки синтаксиса, даже если я явно открываю файлы с помощью редактора Haskell. Во-вторых, нажатие клавиши run запускает консоль GHCi на вкладке Console. Это на самом деле довольно полезно, но звучит неправильно, так как он не запускает файл, а только компилирует и загружает его. Кроме того, представление Outline пусто, даже когда я открываю умеренно большой файл на Haskell.
И последнее, но не менее важное: проект изначально сообщил, что реализация Haskell не настроена. Я вошел в настройки (хотя это нигде не описано как необходимое) и вручную добавил реализацию GHC, указав на каталог bin моей установки на Haskell Platform. Однако, насколько я могу судить, это никак не повлияло.
2 ответа
EclipseFP, похоже, больше не поддерживается активно; Используйте на свой риск.
После большой помощи от разработчиков EclipseFP в их списке рассылки я собрал набор инструкций по установке текущей (2.0.2) версии EclipseFP. Вы можете прочитать мое электронное письмо, но ниже приведены инструкции - оно длинное, но не так сложно, как кажется, и результат довольно приятный:
- Установите GHC / GHCi - но вы уже сделали это, верно?
- Установите Eclipse 3.5+. Если у вас еще нет Eclipse (почему нет?!), скачайте его - либо IDE для разработчиков Java, если вы склонны использовать его также и с Java, либо просто Eclipse Classic, если нет. "Установка" заключается в простом извлечении папки eclipse и запуске исполняемого файла eclipse, на самом деле устанавливать нечего. Он предлагает вам выбрать рабочее пространство, ваша папка пользователя или папка документов - хороший выбор, если у вас нет предпочтений.
- Установите плагин EclipseFP. В Eclipse перейдите в "Справка"> "Установить новое программное обеспечение" и вставьте
http://eclipsefp.sf.net/updates
в поле Работа с: - нажмите ввод. В поле ниже "Функциональное программирование" должно появиться через несколько секунд, отмените и повторите попытку, если это не так. Разверните "Функциональное программирование" и проверьте плагин 2.xx Haskell Support. Выполните остальные шаги, и EclipseFP будет установлен и предложит вам перезапустить Eclipse. - Обновление Cabal Пока вы ждете, запустите окно командной строки (введите cmd на панели запуска в Windows Vista/7) или в терминале и введите "обновление Cabal". Это обновит пакеты, необходимые Haskell, чтобы позволить EclipseFP работать.
- Настройте EclipseFP. Перейдите в "Окно"> "Настройки" и разверните раздел "Haskell". Нажмите "Реализации на Haskell" и нажмите "Добавить". Введите разумное имя (я назвал его "Платформа Haskell"), а затем перейдите в каталог bin вашей установки GHC, который в Windows похож на "C:\Program Files\Haskell Platform\2010.2.0.0\bin". Это заполнит элементы папки Version и Library ниже, нажмите Ok. Нажмите OK, чтобы сохранить эти настройки, затем снова откройте окно настроек. Перейдите к "Отцу и Кабалу" и нажмите "Автоопределение" справа. Он должен добавить элемент в список установленных реализаций Cabal, но если этого не произойдет, нажмите кнопку "Добавить", дайте ему имя, например "Cabal", и укажите путь к исполняемому файлу Cabal, который в Windows похож на "C: \". Программные файлы \Haskell Platform\2010.2.0.0\lib\extralibs\bin\cabal.exe". Нажмите "ОК" и щелкните "Перестроить" справа, чтобы сообщить EclipseFP о создании "сервера Scion", который обрабатывает подсветку синтаксиса и анализ файла. При желании в разделе "Редактор" установите флажок "Показать номера строк" и снимите флажок "Показывать поле печати", я думаю, что это делает панель редактора лучше. Затем нажмите OK, чтобы выйти из настроек.
- Построение сервера Scion Теоретически после выхода из окна настроек EclipseFP начнет выполнять большую работу по сборке сервера Scion. Если этого не произойдет, просто выйдите и перезапустите Eclipse, а когда он перезапустится, он начнет сборку. Если повезет, это будет продолжаться в течение нескольких минут, а затем будет выполнено, однако вы можете столкнуться с некоторыми проблемами из-за привередливой природы системы контроля версий Haskell /Cabal. Если это не удастся, попробуйте снова запустить "cabal update" или запустить что-то вроде "cabal install network-2.3", где network-2.3 - это пакет, о котором сообщается, что сценарий сборки неверен. Как только сервер Scion собран, мы в основном все готово. Перезапустите Eclipse еще раз для хорошей меры.
- Создание проекта Haskell Переключитесь на перспективу Haskell, если это еще не произошло - в правом верхнем углу щелкните значок "Открыть перспективу", нажмите "Другой", если вы не видите Haskell в списке, и выберите "Haskell" во всплывающем окне. Теперь перейдите в File > New > Haskel Project (или Project и затем выберите Haskell Project) и создайте проект. Чтобы создать свой первый файл на Haskell, щелкните правой кнопкой мыши на src flolder в проекте и выберите New > Haskell Module. Это создает файл Haskell, вы можете делать с ним все, что захотите. Чтобы запустить файл, нажмите кнопку "Выполнить" (зеленый круг, белый треугольник) в верхней части. Это запустит базовый терминал GHCi на вкладке Console ниже с подсказкой "Prelude>", если в файле есть ошибки, или "MODULENAME>", если он успешно скомпилирован. Вы можете использовать это как внешний терминал GHCi для запуска таких команд, как:t, или для вызова функций модуля.
- Настройка способа запуска файла И последнее, что облегчит вам жизнь, - это попросите EclipseFP автоматически перезагрузить файл при его сохранении и запустить функцию (например, "main") после перезагрузки файла. Для этого нажмите стрелку вниз рядом с кнопкой запуска и выберите "Запустить конфигурации". Нажмите на конфигурацию слева от файла, который вы хотите, затем нажмите на вкладку Автоматизация. Установите флажок "Перезагрузить пакеты при сохранении", если вы не хотите вводить ":r" весь день, введите имя функции, например "main", и установите флажок "Повторить команду после перезагрузки", чтобы запустить команду автоматически.
Плагин EclipseFP не поддерживается с 2015-05-14 и, похоже, не работает с последними версиями Eclipse.