EclipseFP перестроить локальную ошибку базы данных
Я только что установил EcpliseFP во флэш-Eclipse. Операционная система - Ubuntu 13.04. Установка все хорошо (мне нужно установить некоторые пакеты через cabal и apt-get). Однако, когда я запускаю Eclipse, он показывает следующие сообщения об ошибках:
Error loading local database
Migrating: CREATE TABLE "db_package"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"version" VARCHAR NOT NULL,"doc" VARCHAR NULL,CONSTRAINT "unique_version" UNIQUE ("name","version"))
Migrating: CREATE TABLE "db_module"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"doc" VARCHAR NULL,"package_id" INTEGER NOT NULL REFERENCES "db_package")
Migrating: CREATE TABLE "db_decl"("id" INTEGER PRIMARY KEY,"decl_type" VARCHAR NOT NULL,"name" VARCHAR NOT NULL,"doc" VARCHAR NULL,"kind" VARCHAR NULL,"signature" VARCHAR NULL,"equals" VARCHAR NULL,"module_id" INTEGER NOT NULL REFERENCES "db_module")
Migrating: CREATE TABLE "db_ty_var"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_fun_dep"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_context"("id" INTEGER PRIMARY KEY,"shown" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_constructor"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"signature" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
scion-browser: user error (SQLite3 returned ErrorError while attempting to perform prepare "create index if not exists module_pkgid_name on DbModule (packageId,name)": no such table: main.DbModule)
Я попытался следовать FAQ и введите в консоли следующую команду (мое имя пользователя joe):
$ scion-browser {"filepath":"/home/joe/workspace/.metadata/.plugins/net.sf.eclipsefp.haskell.browser/scion-browser-0.2-dbs/local.db","command":"load-local-db","rebuild":true}
Ничего не показывает и если я пытаюсь набрать "Enter" ключ, он показывает
incomplete data error in command:
и продолжайте ждать ввода.
Когда я прыгаю в длинный каталог выше, я вижу local.db
файл существует, но имеет размер 0. Даже у меня существует Eclipse, он по-прежнему равен 0. Если я игнорирую вышеуказанную ошибку и создаю проект на Haskell, пользовательский интерфейс полностью блокируется, когда я пытаюсь развернуть папку "src" в дереве проекта.
Как исправить эту проблему, чтобы я мог начать ее использовать?
ОБНОВЛЕНИЕ При взгляде на сообщение об ошибке кажется, что браузер scion ожидает таблицу с именем "DbModule", но то, что было создано, называется "db_module". Так что это должно быть несовпадение версий. Однако я не знаю, как заставить другую версию Scion-браузера или что-то еще.
ОБНОВИТЬ
Я нашел кого-то в этой дискуссии говорит, что мне нужно войти scion-browser <Enter>
и затем вставьте параметр в консоль. Итак, я следовал этому, и результат:
$ scion-browser
{"filepath":"/home/joe/workspace/.metadata/.plugins/net.sf.eclipsefp.haskell.browser/scion-browser-0.2-dbs/local.db","command":"load-local-db","rebuild":true}
Migrating: CREATE TABLE "db_package"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"version" VARCHAR NOT NULL,"doc" VARCHAR NULL,CONSTRAINT "unique_version" UNIQUE ("name","version"))
Migrating: CREATE TABLE "db_module"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"doc" VARCHAR NULL,"package_id" INTEGER NOT NULL REFERENCES "db_package")
Migrating: CREATE TABLE "db_decl"("id" INTEGER PRIMARY KEY,"decl_type" VARCHAR NOT NULL,"name" VARCHAR NOT NULL,"doc" VARCHAR NULL,"kind" VARCHAR NULL,"signature" VARCHAR NULL,"equals" VARCHAR NULL,"module_id" INTEGER NOT NULL REFERENCES "db_module")
Migrating: CREATE TABLE "db_ty_var"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_fun_dep"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_context"("id" INTEGER PRIMARY KEY,"shown" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
Migrating: CREATE TABLE "db_constructor"("id" INTEGER PRIMARY KEY,"name" VARCHAR NOT NULL,"signature" VARCHAR NOT NULL,"decl_id" INTEGER NOT NULL REFERENCES "db_decl")
scion-browser: user error (SQLite3 returned ErrorError while attempting to perform prepare "create index if not exists module_pkgid_name on DbModule (packageId,name)": no such table: main.DbModule)
ТАК это в основном то же самое.
1 ответ
Я ответил на форуме Sourceforge ( https://sourceforge.net/p/eclipsefp/discussion/371922/thread/026a3090/?limit=25). В основном версия Scion-Browser версии 0.2.15, которая пыталась поддерживать постоянную 1.2, не работает. Я попробовал это на существующей базе данных, и все было хорошо, но создание не удается. Я нажал 0.2.16 в Hackage, который решает проблему.