2013-11-28 2 views
1

Есть ли какой-либо умный способ переопределить метод Java в Scala с помощью eclipse?Переопределение метода Java в Scala с использованием eclipse

Я не вижу в Eclipse (Scala IDE) опции для «Source», которую я использовал для использования в файлах Java (Source -> Override/Implement method).

Я пробовал использовать другой способ ввода def override exampleMethod и здесь я нажал Ctrl + Space. Ида правильно предлагает метод из суперкласса, однако, когда я принимаю предложение Я вижу только

exampleMethod(param1, param2... etc.) // without arguments types - like a method call 

метод, который я хотел, чтобы переопределить есть 7 параметров и Еогеасп из них я должен был проверить его тип. Это не очень удобно.

Но, может быть, я мог бы сделать это как-нибудь лучше?

+0

Вы пытались указать суперкласс в диалоговом окне New Scala Class при создании класса изначально? Это должно создавать заглушки методов для отмены абстрактных методов, если этот параметр выбран, хотя из-за ошибки, что функциональность не присутствовала в некоторых версиях Scala IDE для Eclipse. –

+1

Хммм ... Генерирование заглушек для не реализованных методов для меня не работает. Моя версия 'Scala IDE build Eclipse SDK Build id: 3.0.2-vfinal-20131028-1923-Typesafe'. Даже если это будет работать, проблема в том, что методы переопределяют. –

ответ

1

Генерация заглушек для переопределенного метода вообще не поддерживается в среде Scala IDE.

Одним из решений является использование нового плагина 'Java to Scala', который конвертирует в файл код Java в код Scala. Он хорошо работает для абстрактных определений методов. Для конкретных методов, трюк я нашел, чтобы не превратить все тело, является:

  • скопировать подпись метода
  • вставьте его
  • добавить ;
  • вырезать текст
  • вставить его с помощью конверсия

Плагин доступен на сайте обновления Scala IDE.

(обязательно) Также мы принимаем вклады в коде для более интегрированного решения.

+0

Знаете ли вы, может быть, если он работает лучше в IntelliJ? Интересно, не изменить ли IDEA хотя бы для проектов Scala, хотя мне нравится eclipse: / –

Смежные вопросы