“Не может загрузить пакет A, он содержит единицу X, который также содержится в пакете B”

Проблема заключается в том, что если таблица заполняется с помощью JavaScript, сортировщик таблиц не найдет новый контент, пока браузер не отобразит новый контент.

Использование таблицы сортировки внутри функции setTimeout () устранило эту ошибку для меня.

    function initPage() {
        fillMyTable();
        // Init table sorter, but give the browser a second to draw the new table
        setTimeout(function(){ $("#my_table").tablesorter(); }, 1000);
    }
13
задан Community 23 May 2017 в 10:32
поделиться

3 ответа

Тот факт, что вы удалили компонент, не означает, что вы удалили имя модуля из предложения USES - они не удаляются автоматически.

4
ответ дан 2 December 2019 в 00:58
поделиться

Лорен: Требуется пункт, так как это .dpk, вы не можете ИСПОЛЬЗОВАТЬ пакеты afaik.

Я бы просто очистил каталог $ (BDSDIR) / projects /, мой собственный каталог проектов, чтобы удалить B.dcp и все dcu для модулей, которые были в B, а затем перестроить A.

Еще одна вещь, чтобы проверить, есть ли зарегистрированный компонент, который зависит от B.

0
ответ дан 2 December 2019 в 00:58
поделиться

Это также может быть связано с этим вопросом .

Модуль X явно связан с обоими пакетами. Есть несколько способов обойти это:

  • создать новый пакет (назовем его пакетом C) с модулем X (и любыми другими зависимостями), затем изменить пакет A и пакет B, чтобы оба использовали пакет C; или ...
  • включить модуль X в пакет B, а пакет A использовать пакет B (который является более компактной формой первого решения).

Если средства просмотра явно упомянуты в вашем коде пакета B, то пакет B, безусловно, должен использовать пакет A ( т.е. , там должна быть явная зависимость). Если это указание на общий код не указано явно, B скомпилирует свою версию кода в B, что приведет к проблеме, которую вы видите.

Теперь, если эта зависимость в порядке, добавляем ссылку на пакет A из пакета B должна сразу решить эту проблему; в конце концов, B будет «использовать» код из пакета A, и одни и те же модули не будут скомпилированы в два пакета. Однако, если это вводит циклические ссылки (я не могу вспомнить, использует ли A B или нет), тогда вам может потребоваться небольшой рефакторинг:}

s собственная версия кода в B, что приводит к проблеме, которую вы видите.

Теперь, если эта зависимость в порядке, добавление ссылки на пакет A из пакета B должно сразу устранить эту проблему; в конце концов, B будет «использовать» код из пакета A, и одни и те же модули не будут скомпилированы в два пакета. Однако, если это вводит циклические ссылки (я не могу вспомнить, использует ли A B или нет), тогда вам может потребоваться небольшой рефакторинг:}

s собственная версия кода в B, что приводит к проблеме, которую вы видите.

Теперь, если эта зависимость в порядке, добавление ссылки на пакет A из пакета B должно сразу решить эту проблему; в конце концов, B будет «использовать» код из пакета A, и одни и те же модули не будут скомпилированы в два пакета. Однако, если это вводит циклические ссылки (я не могу вспомнить, использует ли A B или нет), тогда вам может потребоваться небольшой рефакторинг, чтобы:}

8
ответ дан 2 December 2019 в 00:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: