2013-06-08 2 views
0

Я установил LuaFileSystem с помощью команды: luarocks install luafilesystem. Теперь я хочу, чтобы использовать его в своем сценарии, но я получаю эту ошибку:Пытается использовать LuaFileSystem на Ubuntu 10.04

[splay.sandbox] W: требовать от LFS отказался 10: 34: 11,65 (6) [splay.events] E: резьба: 0x93f0b20 УМЕРЕТЬ (ошибка: [строка «код задания»]: 35: попытка индексации локальных «lfs» (значение nil)) 10: 34: 11.65 (6) [splay.events] E: трассировка стека: 10:34: 11.65 (6) [строка «код задания»]: 35: в функции «getHomeDirectory» 10: 34: 11.65 (6) [строка «код задания»]: 79: в функции < [строка «код задания»]: 76 >

Я попытался объявить его глобальным: lfs = требуется «lfs» или просто требуется «lfs», даже локальное в функции:

function getHomeDirectory(position) 
    local lfs = require"lfs" 

    print(lfs.currentdir()) 
end 

Но все же я получаю эту ошибку. Есть что-то, что мне еще нужно сделать, чтобы оно работало?

СПУСТЯ EDIT: та же ошибка с "нилъ значение" я получаю при попытке открыть файл с Io:

local f = io.open('/home/alex/Desktop/SPLAY WORK/splay_client_commands_1.4/test1.txt', "r") 

[splay.events] E: Тема: 0x955f4c0 DIE (ошибка: [строка «код задания»]: 120: попытка индексации локального «f» (значение nil))

В чем может быть проблема?

ответ

2

Звонок io.open можно легко отладить, добавив assert вокруг него. Это выведет сообщение об ошибке, когда io.open не удается открыть файл:

local f = assert(io.open('/home/alex/Desktop/SPLAY WORK/splay_client_commands_1.4/test1.txt', "r"))

Этот «трюк» также описанный в: http://www.lua.org/pil/21.2.html

+0

Я сделал это ... он говорит, что он может открыть файл. Я попытался использовать ограничительный io, но получаю при объявлении «io = require (« splay.restricted_io »)« ошибка: «Требовать, чтобы splay.restricted_io отказался». Файл существует, и для ограничения io он находится в папке, объявленной в функции init. –

+0

Жаль, не могу открыть файл :) –

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