- Иногда люди по ошибке импортируют классы, которые присутствуют в JDK macbooks, но отсутствуют в Linux. Это приводит к сбою сборки на CI, которые представляют собой коробки на базе Linux. Такое случается нечасто, но когда это происходит, я думаю, что должен быть какой-то более разумный способ узнать это раньше.
- Неиспользованный импорт вызывает предупреждение при анализе IDE/кода. Время от времени кому-то нужно тратить время на уборку. Даже если это всего лишь один щелчок правой кнопкой мыши в IDE, вам все равно нужно сделать PR, передать сборку и т. д. и т. п.
Возможно, сборка не удалась, потому что неиспользованный импорт звучит грубо, но если это сэкономит время всей команде, то имеет смысл это сделать (тоже хотелось бы услышать мнение по этому поводу).
ОБНОВЛЕНИЕ >:
Я последовал предложению yegor256 и включил задачу Checkstyle с первоначально небольшим подмножеством соглашений Sun Code (одна из них - неиспользуемый импорт) и заставил ее прерывать сборку, если были обнаружены нарушения. >
После недели пробного периода в нашей кодовой базе нет ни одного неиспользованного импорта, и на удивление нет жалоб на это правило (кстати, Checkstyle очень быстр: анализ ~100KLoc занимает менее одной секунды).
Что касается использования IDE для такого анализа: да, это хороший выбор, но лучше запускать такого рода проверки как часть автоматической сборки.
Подробнее здесь: https://stackoverflow.com/questions/124 ... mmatically