Я хотел бы добавить несколько слов о предупреждениях и ошибках, о которых сообщили IntelliJ Idea.
JetBrains использует собственный анализатор scala для идентификации и сообщения об ошибках. Иногда он сообщает о ложных ошибках или предупреждениях. Я думаю, это связано с тем, что scala - это гораздо более сложный язык, с точки зрения компиляторов, а затем и многих других языков. Даже если была применена вся официальная спецификация scala, есть некоторые случаи, которые были опущены (читайте: всегда есть некоторые ошибки). Если вы обнаружите, что в IntelliJ IDEa указано сообщение об ошибке/предупреждении, которое подходит для компилятора scalac, вы всегда можете попытаться сообщить об этом как ошибку (IntelliJ IDEa поддерживает ошибки отчетности). Ребята из JetBrains исправит это.
Больше, чем некоторые библиотеки scala используют макросы, которые являются расширениями компилятора, которые добавляют некоторое дополнительное поведение компилятора. Если IDE знает свою спецификацию, они не будут идентифицировать эти нестандартные коды как ошибки. Лучше знать об этом. Я думаю, что те же касается Eclipse scala IDE.
Резюмируя все выше: Не доверяйте все предупреждения и ошибки, IntelliJ или другой IDE говорит вам, если это не компилирует хорошо используя scalac.
Какой плагин Scala вы используете? Я использую этот http://www.jetbrains.net/confluence/display/SCA/Scala+Plugin+for+IntelliJ+IDEA. Вы можете добавить параметр компилятора таким образом: откройте «Структура проекта» -> выберите «Границы» -> выберите «Scala/Scala» -> измените «Дополнительные параметры компилятора». И он также не печатает бессмысленные предупреждения. – longhua