У меня возникают проблемы с выгрузкой пространства имен для пакета, созданного в R. Каждый раз, когда я пытаюсь это сделать, я получаю следующую ошибку:
Ошибка в .mergeMethodsTable(generic, mtable, get(tname, envir = env), : попытка получить слот, «определенный» из объекта базового класса («окружение») без слотов
Вызовы: unloadNamespace ... -> .updateMethodsInTable -> .mergeMethodsTable
Вот результаты вызова traceback() после возникновения вышеуказанной ошибки.
>4: .mergeMethodsTable(generic, mtable, get(tname, envir = env), attach)
3: .updateMethodsInTable(fdef, where, attach)
2: methods:::cacheMetaData(ns, FALSE, ns)
1: unloadNamespace("coleXcms")
Честно говоря, я пробовал все, что мог придумать, но безрезультатно. Я новичок в R, поэтому я надеялся, что кто-то сможет мне помочь.
Кроме того, не знаю, будет ли это полезно, но вот крючок для разгрузки моего пакета. (Название моего пакета coleXcms)
.onUnload <- function(libpath) {
mzR:::rampCloseAll()
library.dynam.unload("coleXcms", libpath)
}
traceback()
после возникновения ошибки. - person Martin Morgan   schedule 10.05.2014