Совместимость

Поддерживаемые версии Revit: 2022–2027

Надстройка и инструменты проекта собираются для Autodesk Revit с 2022 по 2027 включительно. Это шесть версий из одного исходного дерева — но не один бинарник. Разбираем, почему так, что делает слой совместимости и как не сломать установку при переходе на новую версию.

Олег Сахаров··обновлено 21 октября 2026 г.

Диапазон версий

Поддерживаются Autodesk Revit 2022, 2023, 2024, 2025, 2026 и 2027. «Поддерживается» означает, что для версии есть конфигурация сборки, манифест и проверенный сценарий запуска, а не только теоретическая совместимость исходников.

  • Autodesk Revit 2022 — .NET Framework 4.8
  • Autodesk Revit 2023 — .NET Framework 4.8
  • Autodesk Revit 2024 — .NET Framework 4.8
  • Autodesk Revit 2025 — .NET 8
  • Autodesk Revit 2026 — сборка под runtime этой версии
  • Autodesk Revit 2027 — сборка под runtime этой версии

Точный целевой runtime для 2026 и 2027 задаётся установленным API, а не привычкой: проверяйте по свойствам сборки RevitAPI.dll и по документации Autodesk для конкретной версии. В репозитории эти различия уже разведены по конфигурациям.

Почему нельзя один DLL на все версии

Revit загружает .NET-сборку в свой процесс. Если плагин собран под .NET Framework 4.8, он не загрузится в процессе на .NET 8, и наоборот. Кроме runtime, меняются сигнатуры API, появляются новые типы и удаляются устаревшие. Переименовать DLL и положить в другую папку — не решение: вы получите либо отказ загрузки, либо падение на первом же обращении к изменившемуся методу.

Поэтому «поддержка шести версий» — это шесть конфигураций сборки и один общий код, а не один файл. Пользователь скачивает пакет под свою версию; разработчик поддерживает одно дерево.

Как устроен слой VersionCompat

Идея простая: бизнес-логика не должна знать, какая версия Revit её вызвала. Всё, что отличается между версиями, прячется за небольшим набором адаптеров, а остальной код работает с стабильными интерфейсами.

  • Условная компиляция. Участки, которые есть только в новых версиях API, обёрнуты символами вида REVIT2025_OR_NEWER.
  • Адаптеры. Отличия в получении параметров, работе с типами и геометрией сосредоточены в одном месте, а не размазаны по инструментам.
  • Отражение — крайняя мера. Иногда без него не обойтись, но каждое такое место стоит комментария и теста: компилятор его не проверит.
  • Разные проекты сборки. Тонкий слой команды ссылается на API конкретной версии; общая библиотека от Revit не зависит.

Такой слой не появляется сам. Его цена — дисциплина: новое обращение к API сразу проверяется на всех поддерживаемых версиях, а не «потом». Зато переход команды на новую версию Revit не превращается в переписывание инструментов.

Матрица сборки и установки

RevitRuntimeОсобенность
2022.NET Framework 4.8Старый контракт API, отдельная сборка
2023.NET Framework 4.8Отдельная сборка
2024.NET Framework 4.8Отдельная сборка
2025.NET 8Смена runtime, пересборка ссылок на API
2026.NET 8/10 по версии APIСборка под конкретную версию
2027.NET 8/10 по версии APIСборка под конкретную версию

Манифест .addin кладётся в папку версии: %APPDATA%\Autodesk\Revit\Addins\2026 для пользователя или %PROGRAMDATA%\Autodesk\Revit\Addins\2026 для всей машины. Один и тот же манифест на две версии не работает: путь к DLL у них разный.

В репозитории сборка и раскладка автоматизированы: конфигурации под версии, скрипты сборки и инструкция по установке. Это снимает ручную работу, на которой чаще всего и возникают ошибки «у меня работает, у коллеги нет».

Как выходит новая версия Revit

  1. Установить новую версию Revit и зафиксировать целевой runtime по её API, а не по прошлой версии.
  2. Добавить конфигурацию сборки и ссылки на API новой версии. Не пытаться переиспользовать DLL предыдущей.
  3. Прогнать сборку и smoke-тесты на пустом документе и на реальной модели-образце.
  4. Проверить поведение инструментов, которые обращаются к изменившимся участкам API; для них добавить версионные тесты.
  5. Обновить манифест и пакет установки, проверить, что старая версия не сломалась.
  6. Зафиксировать результат в changelog: какая версия Revit поддерживается с какого релиза.

Отдельная ловушка — «тихая» деградация: плагин загружается, но часть инструментов возвращает пустой результат из-за изменившегося API. Поэтому smoke-тест должен проверять не только запуск, но и несколько реальных выборок.

Диагностика при установке

  • Плагин не появился. Проверьте папку Addins для вашей версии, путь в манифесте и полное имя класса. Журнал Revit покажет, какой манифест не загрузился.
  • Ошибка загрузки сборки. Почти всегда несовпадение runtime: DLL под .NET 8 в Revit 2024 или наоборот.
  • Команда есть, но падает. Проверьте, что рядом с плагином нет копий RevitAPI.dll и RevitAPIUI.dll.
  • MCP-сервер не отвечает. Плагин загружен, но порт занят или указан неверно. Адрес и порт показывает сам плагин; подробнее — в инструкции по подключению.

Что ещё нужно, кроме версии

Базовые навыки работы в Revit обязательны: плагин выполняет действия в документе, и понимание модели важно для постановки задачи и проверки результата. Опыт программирования не требуется — работа с кодом строится через AI-агентов и готовые шаблоны.

Доступ к сборкам, исходному коду и инструкциям открывается вместе с приватным GitHub-репозиторием; состав и условия — в описании репозитория и на главной странице.

Перейти к практике

Первоначальный платёж открывает приватный GitHub-репозиторий RevitAiTools, обучающий курс и сообщество. Условия, состав доступа и актуальная цена — на главной странице.

Посмотреть условия доступа
Поддерживаемые версии Revit: 2022–2027