Я конечно понимаю дословный перевод " Name already defined ->" Но что то не пойму в чём дело...
-- Это то, что метод с таким именем где то используется или что то другое? В процессе экспериментов получил ошибку (другую). стал править один метод и получил Name already defined -> Странно, что если даже возвращаю метод к исходному состоянию при Accept(е) опять Name already defined ... Я вроде откатил все изменения, а один чёрт Как искать корень зла? Вроде я ничего не already defined... :( Я понимаю что сложно наверное сказать не видя кода, но что это может быть, какие варианты, как можно искать причины? -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
О каком Smalltalk-е речь-то? В Pharo я такой строки не нахожу совсем… в отличие от Name already — такие слова встречаются несколько раз. По описанию, конечно, похоже на глюк (с учетом того, что Smalltalk-и не особо надежны в плане отката изменений) , но кто знает… Метод с таким же именем, по идее, мешаться не может, так как при совпадении имен новая версия просто "перекрывает" предыдущую. Это, скорее, может относиться к имени переменной или (или в частности?) имени класса.
-- Best regards, Dennis Schetinin 11 сентября 2013 г., 21:33 пользователь Genosse Alex <[hidden email]> написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Означает что переменная с таким именем уже существуе. Если попытаться скомпилировать вот такой метод: testing| aVar | aVar := Object new. [| aVar | aVar new] forkAt: 15 Pharo выдает ошибку: testing | aVar | aVar := Object new. [| Name is already defined ->aVar | aVar new] forkAt: 15 2013/9/11 Dennis Schetinin <[hidden email]>
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
In reply to this post by Dennis Schetinin
В Pharo (открывал образ и в 2.0 и 3.0.), Seaside 3
-- Ругается на метод из того же класса. -- Попробую ещё весь пакет в Squeak запустить... среда, 11 сентября 2013 г., 21:56:05 UTC+4 пользователь chaetal написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
In reply to this post by Alex Kogan
А если внутри метода выдающего ошибку чего-то похожего нет? (Да и вообще первоначально он нормально прошёл) где может таиться ошибка?
-- -- Вообще странно как-то получилось... сам я этот код и метод, в частности не писал, вроде из достоверного источника взял. Ради того, что бы проще было разобраться с примерной логикой реализации одного веб-компонента, решил по порядку до него пройти известный пример "ToDo Application" http://www.hpi.uni-potsdam.de/hirschfeld/seaside/tutorial. Но что-то не далеко ушёл.., вроде всё по порядку и без самодеятельности, однако вот.., практически на первых же паре страниц... :( среда, 11 сентября 2013 г., 22:12:10 UTC+4 пользователь Саша написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Метод в студию. 2013/9/11 Genosse Alex <[hidden email]>
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
initializeListComponentself listComponent: StListComponent new.self listComponent ругается на showPendingTasks и на :task в renderItemBlock: showPendingTasks self listComponent filterBlock: [:item | item isPending]. среда, 11 сентября 2013 г., 22:40:25 UTC+4 пользователь Саша написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Похоже это всё не то...
-- Я скачал сейчас код готового приложения из данного примера. Открыл. Там эти методы один в один те же и такой ошибки нет... Но окружение их (др. методы, классы) несколько отличаются. Это естественно из-з того,что скаченный пакет это конены резльтат примера, а я завис в самом начале. Но ясно, что причина " Name already defined" за пределами этого метода, но как это может быть, в принципе какие возможны варианты возникновения ошибки? Я не заметил, что бы кто-то в сети жаловался на некорректность этого тутриала... -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
In reply to this post by Genosse
Класс содеражащий метод initializeListComponent уже задекларировал instance variable по прозвищу task. Например Object subclass: #Testing instanceVariableNames: 'task' test [:list | [: Name is already defined -> task | task testing] value: list] fork 2013/9/11 Genosse Alex <[hidden email]>
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Блиннн... Спасибо.
-- Вот я растяпа... Когда пытался понять и исправить первую возникшую ошибку "doesNotUnderstand" создал пару методов доступа. Потом, как получил эту ошибку всю отсебятину удалил, а имя переменой task из описания класса не вычистил... Сорри за глупые вопросы. среда, 11 сентября 2013 г., 23:00:35 UTC+4 пользователь Саша написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Ошибки очень редко бывают мудреными. Частенько приходиться звать соседа, чтобы через плече поглядел, сразу начинают находиться. Или он меня зовет поговорить.
2013/9/11 Genosse Alex <[hidden email]>
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group. Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес [hidden email]. Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out. |
Free forum by Nabble | Edit this page |