2024-07-02 18:19:30 +03:00
2023-10-02 12:44:06 +03:00
2024-11-18 16:50:08 +03:00
2023-04-14 11:16:11 +03:00
2015-03-01 22:17:02 +03:00
2023-10-02 12:44:06 +03:00
2015-03-01 22:17:02 +03:00
2024-07-02 18:19:30 +03:00
2024-07-01 16:13:40 +03:00
2024-07-02 17:28:21 +03:00
2023-10-02 12:44:06 +03:00
2023-10-02 12:44:06 +03:00
2022-05-26 13:49:58 +03:00
2024-07-02 17:29:02 +03:00
2019-10-17 15:52:05 +03:00
2023-10-02 12:47:27 +03:00
2024-07-01 16:14:43 +03:00

Пример проекта на платформе ncore

Здесь представлена стандартная структура проекта с основными конфигурационными файлами и классами, а также настройки IDE (Intellij Idea) и настройки SCM (git).

Для данного проекта можно использовать базу ядра.

Таски запускаются с помощью gradle wrapper. Версия Gradle - 7.5.1.

Nix

./gradlew build

Win

gradlew.bat build

Основные таски

  • ncoreLoadPatches (или patch) - загрузка патчей
  • ncoreApplyPatches (или update) - применение патчей
  • ncoreUpdateDb (или updateDatabase) - загрузка и применение патчей
  • generateSources (или codemaker) - генерация исходников
  • classes - компиляция
  • build - компиляция, выполнение проверок (тесты)
  • distZip - генерация zip-архива дистрибутива толстого клиента (build/distributions)
  • war - генерация war-архива тонкого клиента (build/libs)
  • release - выпуск сборки
  • run - запуск клиента (обычно при запуске исключают этап генерации кода - generateSources)

Если нужно выполнить таск, но при этом не выполнять определенные такси из его зависимостей, то можно воспользоваться ключом -x.

Компиляция классов:

./gradlew classes -x generateSources

Запуск клиента:

./gradlew run -x generateSources

Запуск клиента в режиме отладки (порт 5005):

./gradlew run --debug-jvm

Названия тасков можно сокращать. Например, вместо generateSources можно указать gS, вместо ncoreLoadPatches nLP и т.д.

Intellij Idea

Синхронизация настроек - Ctrl+Shift+A, далее выбрать пункт "Refresh All External Projects", или в окне Gradle нажать кнопку Refresh.

Для зависимостей создаются библиотеки с префиксом "Gradle__". По данному префиксу можно лего создть шаблоны для svn:ignore или .gitignore.

Таски можно запускать прямо из Idea. В конфигурациях запуска имеется соответствующий тип.

В Idea 14.1 появилось действие "Execute Gradle Task", которое позволяет выполнять таски без указания конфигурации запуска.

Основные соглашения

  • Группа проекта в gradle-скрипте соответствует основному пакету
  • Основной пакет содержит классы Product и Version
  • Файлы с версией (version.properties) и переопределенными классами (register.json) находятся в ресурсах по следующему пути: META-INF/ncore-product/[группа проекта]
  • В корне проекта обязательно присутствет файл ncore-properties.xml, содержайщий свойство product.name.

Создание проекта myproject на основе sample

  1. Создать директорию myproject и скопировать в нее содержимое ncore-sample

  2. Удалить директорию .git

  3. В build.gradle изменить значение group

group = 'biz.redsoft.myproject'
  1. В settings.gradle изменить значение rootProject.name
rootProject.name = 'biz.redsoft.myproject'
  1. В ncore-properties.xml (в папках ./, src/main/webapp/WEB-INF и src/dist/config изменить значение product.name и product.title
<entry key="product.name">biz.redsoft.myproject</entry>
<entry key="product.title">MyProject title</entry>
  1. В файлах starter и starter.bat поменять bin/sample на bin/biz.redsoft.myproject

  2. В исходниках пакет biz.redsoft.sample заменить на biz.redsoft.myproject (это можно сделать в IDE)

  3. В META-INF/ncore-product изменить имя диектории biz.redsoft.sample на biz.redsoft.myproject

  4. Актуальная версия ядра указывается в файле gradle.properties:

biz.redsoft.ncore.version=1.8.5.0

Запуск толстого клиента осуществляется в собранном дистрибутиве (distTar или distZip) в каталоге bin командой: start-client.bat (или ./start-client в линуксе)

Description
No description provided
Readme 16 MiB
Languages
Java 100%