Добавление нового модуля
Создал новый модуль, добавил в проект, но не вижу никаких изменений. При запуске сервера этот новый модуль не инициализируется (смотрел в start.log). Нужно ли его как-то прописывать в конфигурации проекта, или он должен подхватиться автоматически?
Ответы (1 шт):
Давайте разберемся, как сервер ищет модули:
Сначала учитываются параметры запуска
logics.includePaths
иlogics.excludePaths
. Первый определяет список путей, по которым будет осуществляться поиск .lsf файлов. Второй - наоборот, список путей, которые должны быть исключены из поиска.Если
logics.includePaths
не задан, то его значение по умолчанию будет*
, что будет соответствоватьclasspath
запускаемого сервера, который в свою очередь по умолчанию будет текущей директорией, где запускается jvm. Еслиlogics.exludePaths
не задан, то его значением будет пустой список.В результате получится набор путей, по которым будет осуществлен поиск .lsf файлов.
Затем учитывается параметр запуска
logics.topModule
. Его значением должно быть имя специального "верхнего" модуля (обратите внимание, что именно имя модуля, а не файла). Если этот параметр задан, то из всех модулей, которые были найдены в первом пункте, будут выбраны только этот модуль и все модули, от которых он зависит.С помощью этого параметра можно удобно управлять набором необходимых модулей для текущего проекта/конфигурации.
Более подробно про этот процесс можно почитать в документации.
По итогу, чтобы добавить новый модуль в проект, вам нужно положить его по одному из путей, в которых будет происходить поиск .lsf файлов и, если установлен параметр запуска logics.topModule
, то прописать его в инструкции REQUIRE
какого-нибудь из модулей проекта (чаще всего в модуле, прописанном в logics.topModule
).