# Настройка проекта

Проект настраивается с использованием `gsf-cli`. Подробнее об утилите см. в документации по [Global System Framework CLI](https://help.globalerp.ru/books/GsfCli/SNAPSHOT/html/index.html).

## Добавление проекта

1. Запустите скрипт добавления проекта в соответствии с используемой операционной системой:

   - под Windows запустите скрипт:

     ```text
     C:\programs\gsf-cli\links\add_project.cmd
     ```

   - под Astra Linux или Alt Linux выполните команды:

     ```console
     cd /home/admin/global/gsf-cli/links
     ./add_project.sh
     ```

2. Укажите имя проекта.
3. Укажите путь к JDK, а не к JRE.

   Требуемая версия JDK определяется по значению параметра `javaFeatureRelease` в файле `project.yaml` проекта.

   При настройке под Astra Linux укажите следующие пути:

   - путь к JDK — `/usr/lib/jvm/bellsoft-java21-full-amd64`;
   - путь к `GigaIDE` — `/home/admin/global/GigaIDE`;
   - путь к `sbt` — `/home/admin/global/sbt`.

   При настройке под Alt Linux укажите следующие пути:

   - путь к JDK — `/usr/lib/jvm/jdk[версия]`;
   - путь к `GigaIDE` — `/home/admin/global/GigaIDE`.

4. Укажите адрес Git-репозитория проекта.

   Под Windows вставить значение из буфера обмена можно правой кнопкой мыши.

5. Остальные параметры оставьте по умолчанию.

## Настройка проекта под Windows

После указания параметров проекта выполните дополнительную настройку `IntelliJ IDEA`.

1. Когда система предложит **запустить IDEA**, выберите **Да**.
2. После завершения экспорта закройте `IntelliJ IDEA` и выберите **Сконфигурировать IDEA > Да**.
3. Создайте на рабочем столе ярлык для запуска проекта, который ссылается на файл:

    ```text
    C:\programs\gsf-cli\workspace\links\{имя_проекта}\start_idea.cmd
    ```

    Для работы с проектом запускайте `IntelliJ IDEA` через этот ярлык.

4. В настройках `File > Settings > Build, Execution, Deployment > Compiler > Scala Compiler > Scala Compile Server` задайте параметры компиляции:

    - **Maximum heap size, MB**:
      - `16384`, если объем ОЗУ — 32 ГБ и более;
      - `8192`, если объем ОЗУ — 16 ГБ.
    - **Shared heap size, MB** — `3000`.
    - Включите опцию **Compile independent modules in parallel, in up to** и укажите значение `6`.

```{note}
Если при компиляции проекта возникает ошибка `java.lang.OutOfMemoryError: Java heap space`, увеличьте значение **Shared build process heap size (Mbytes)** до `3000`.

Параметр находится в настройках `File > Settings > Build, Execution, Deployment > Compiler`.
```

5. Аналогично задайте **Maximum heap size, MB** в настройках `File > Settings > Build, Execution, Deployment > Build Tools > sbt`.
6. В файле `Help > Edit Custom VM Options` установите параметр `-Xmx`:
   - `-Xmx16384m`, если объем ОЗУ — 32 ГБ и более;
   - `-Xmx8192m`, если объем ОЗУ — 16 ГБ.
7. На панели **sbt** для проекта выполните задачу `publishDevDependencies`.
8. Соберите проект с помощью сочетания клавиш `Ctrl+F9`.
9. Настройте схемы согласно инструкции [Подключение XSD-схем к редактору кода](../../050_tools/100_intellij_idea.md).

## Подключение к базе данных

При необходимости настройте подключение к базе данных проекта в используемом клиенте СУБД.

Параметры подключения предоставляются администратором или ответственным за проект.