Вы проверили, что он существует в виде файла в текущем рабочем каталоге. Вы не проверили, существует ли он на пути к классам.
Если вы знаете, что он существует как файл, почему бы не загрузить его как файл?
Если вы хотите загрузить его из пути к классам, почему бы не изменить проверку, чтобы убедиться, что он существует в пути к классам?
По сути, вы должны соблюдать согласованность между проверкой и загрузкой.