Я пишу gtk + приложение с использованием Gjs (привязки JavaScript Gnome) Поскольку нет доступных документов, я читаю источники JavaScript-гномов-оболочек. В моем приложении мне нужно получить доступ к global.userdatadir
.Использование объекта Shell в Gjs
Я пытаюсь добавить объект оболочки к моему сценарию:
const Shell = imports.gi.Shell;
и запустить его с #gjs myscript.js
, но когда я делаю это он бросает мне ошибку говоря:
JS ERROR: !!! Exception was: Error: Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found
JS ERROR: !!! lineNumber = '0'
JS ERROR: !!! fileName = '"gjs_throw"'
JS ERROR: !!! stack = '"("Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found")@gjs_throw:0
@manager.js:5
"'
JS ERROR: !!! message = '"Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found"'
Error: Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found
Я не могу понять, что с ним не так, это точно так же, как в исходных файлах Gnome-shell. Другие объекты в порядке, используя imports.gi.Gio
, imports.gi.GLib
, работает нормально.
Работа на Ubuntu 11.10 x64
В общем случае ответы только на код не являются предпочтительными. – Ryan