Eclipse: несоответствие типов: невозможно преобразовать из String [] в любой
Eclipse жалуется на мой код JavaScript:
Как я уже сказал, код работает нормально. Что мне нужно изменить, чтобы избавиться от предупреждения?
Ответ 1
Семантический валидатор (несмотря на его недостатки, как этот) фактически имеет много применений. Например, он может сказать вам, когда у вас есть переменная, которая нигде не используется (например, потому что у вас есть опечатка в имени переменной).
Если вы не хотите видеть это сообщение об ошибке, но вы все еще хотите сохранить семантическую проверку, вы можете использовать этот хак:
var textArray = 0 || [ ...
это немного уродливо, и вашим коллегам, не использующим Eclipse, может это не понравиться, но по крайней мере это дает вам возможность предотвратить предупреждение и все еще пользоваться преимуществами валидатора.
Аналогичный взлом (если вам не нравится первый, или если вы большой поклонник Дугласа Крокфорда), который также будет работать:
var textArray;
textArray = [ ...
Ответ 2
Кажется, это ошибка WTP, более конкретно компонента JS Validator, которая по умолчанию настроена на "Включить семантическую проверку JavaScript".
Попробуйте отключить семантическую проверку на странице настроек.