Смысл статического анализа заключается в том, что он анализирует файлы вашего проекта «в состоянии покоя», а не отслеживает работающее приложение.https://en.wikipedia.org/wiki/Static_program_analysis
Анализ байт-кода имеет свои сильные и слабые стороны по сравнению с анализом исходного кода.Это быстрее и лучше подходит для глубокого анализа потока программы, но не позволяет обнаруживать ошибки, которые компилируются, например, ненужный импорт и непоследовательный, но допустимый пробел.
Нельзя правильно запустить егоодин файл, даже если вы скомпилировали этот файл, потому что есть детекторы, которые учитывают несколько файлов, например, обнаружение, когда вы пытаетесь передать null
методу, параметры которого помечены как ненулевые, или когда вы определилиметод как public и затем никогда не вызывал его извне класса.