Build from Source - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

Сборка из исходников

Навигация:

Age of Power:

Требования

  • Windows x64;
  • 64-битный PowerShell;
  • .NET SDK, закреплённый в global.json, или совместимый patch той же feature band;
  • доступный NuGet cache либо сеть для восстановления пакетов;
  • Node.js и npm для пересборки Eclipse Theia, если менялась IDE;
  • достаточно свободного места для NativeAOT и двух редакций.

Версия SDK закреплена в global.json.

Быстрый путь

Из корня полной редакции запустите:

.\BUILD_V49_WINDOWS.cmd

Сценарий выполняет проверку окружения, тесты, сборку и контроль выходного каталога. Для изменения путей используйте параметры BUILD_V49_WINDOWS.ps1, в частности OutputDirectory, BaselineClientDirectory, NuGetPackagesDirectory и параметры smoke test.

Ручная проверка .NET

dotnet --version
dotnet restore .\ClassicUO.sln -p:NuGetAudit=false
dotnet test .\tests\ClassicUO.UnitTests\ClassicUO.UnitTests.csproj -c Release
dotnet test .\external\InjectionScript\src\InjectionScript.Tests\InjectionScript.Tests.csproj -c Release
dotnet test .\external\InjectionScript\src\InjectionScript.Lsp.Tests\InjectionScript.Lsp.Tests.csproj -c Release

Eclipse Theia

Пакет IDE находится в external\YokoTheia; базовая платформа — Eclipse Theia.

cd .\external\YokoTheia
npm install
npm run build

Не заменяйте lockfile и версии Theia без повторного полного тестирования IDE.

NativeAOT

Финальный Windows-клиент проверяется как NativeAOT x64. Для графического smoke test нужны локальные игровые данные Ultima Online; они не входят в репозиторий.

Редакция без Basic

Её следует собирать и тестировать отдельно. Успешная сборка Full не доказывает отсутствие Basic-зависимостей в Bad Newbie Only.

Навигация:

Age of Power: