macOS - Объекты в Custom Framework выдают нераспознанную ошибку селектора - PullRequest
0 голосов
/ 01 марта 2019

Я создаю пользовательский фреймворк впервые и планирую использовать его в плагине.Поскольку это не приложение, я не могу просто перетащить свою пользовательскую инфраструктуру в раздел «Встроенные двоичные файлы» целевого приложения.Собранный из разных уроков, я выполнил следующие шаги:

  1. Создание дополнительной записи файлов записи на этапе сборки целевого модуля плагина, которая добавляет мою среду к пути ./Frameworks моего продукта.
  2. Добавлен фреймворк в разделе связанных двоичных файлов с библиотеками цели
  3. Добавлена ​​запись в путях поиска фреймворка цели в настройках сборки

Оттуда мой XCode-проект моего плагина смогуспешно ссылаться на классы, которые я определил в своей пользовательской среде, а также создавать экземпляры объектов при запуске его в соответствующем хост-приложении.Однако после создания одного из моих подклассных контроллеров NSViewController, определенных в платформе, он вскоре потерпел крах, когда я попытался вызвать один из его методов.Согласно консоли, причина была unrecognized selector sent to instance <memory_address> abort() called, где рассматриваемым селектором был метод установки, который я вызвал.

Я уже использовал и определял подклассы NSViewControllers в моих проектах плагинов, только не из фреймворка.Я не уверен, является ли проблема с моей установкой фреймворка для моего проекта плагина или странностью загрузки пера.Еще одна странность, которую я заметил, заключается в том, что некоторые свойства моего NSViewController в некоторых случаях отсутствовали, как, например, в отладчике XCode.Когда это происходит, вот где мой плагин падает и сообщает мне о нераспознанной проблеме селектора.Кто-нибудь может пролить немного света здесь?

Заранее спасибо.

1 Ответ

0 голосов
/ 01 марта 2019

Вероятно, что адрес памяти указывает на какой-либо другой тип объекта или кусок освобожденной памяти.Возможно, из-за чрезмерного выпуска / недооценки где-то.Вы использовали NSZombies?Адрес дезинфицирующее средство?Я полагаю, что факт, что это в плагине, на самом деле не имеет значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...