Работа со ScanSuite

(Опционально) Сборка кода

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

Некоторым сканерам для Java и C#/.NET — CodeQL, FindSecBugs, Security Code Scan и другим — перед анализом нужно инструментировать код — по сути, прогнать его через процесс, близкий к компиляции. Это может быть непросто: исходный код должен быть полным и корректным, а зависимости — либо доступны офлайн, либо загружаемы из внутреннего артефактория или из интернета.

Уточните у разработчиков или коллег, как получить компилируемую версию кода. Результаты сканирования обычно окупают дополнительные усилия.

Пример ниже относится к проектам Java, собираемым Maven. Сканеры SAST, такие как CodeQL и FindSecurityBugs, поддерживают Maven, Gradle, Ant и ряд других систем сборки: они попытаются загрузить зависимости из мест, указанных в pom.xml, и скомпилировать код для дальнейшего анализа.

Когда репозиторий зависимостей доступен

Делать ничего не нужно. Это хорошо работает, если репозиторий зависимостей доступен сканеру и не требует аутентификации для загрузки модулей — например, доступен через интернет.

Когда он недоступен

Загрузите зависимости заранее и передайте закэшированные модули вместе с исходным кодом. Закэшировать зависимости Maven вручную можно, выполнив из папки с исходным кодом:

Терминал
./mvnw dependency:go-offline
Вывод команды Maven go-offline
Кэширование зависимостей Maven

Зависимости загружаются компилятором Maven и сохраняются в папке ~/.m2:

Локальный репозиторий Maven
Заполненная папка ~/.m2

Обе папки содержат загруженные модули, которые можно передать в офлайн-установку ScanSuite. Скопируйте их в папку dependency исходного кода и загрузите ZIP-архив с кодом через веб-интерфейс, как обычно:

Архив с закэшированными зависимостями
Папка dependency внутри загружаемого архива

Проверено: 2026-08-16