Нужно загрузить класс scala во время выполнения из jar и инициализировать его - PullRequest
3 голосов
/ 08 ноября 2010

Для всех - я, вероятно, в лучшем случае новичок здесь, пытающийся обернуть мою голову вокруг скалы, и я нахожу, что мне нужно сделать следующее:

  • Предположим, у меня есть скалакласс на диске, на который я ссылался в моем classpath.
  • У меня есть приложение scala, которое хочет динамически загрузить этот класс и вызвать его конструктор
  • Когда у меня есть ссылка на этот класс, я могу использовать его для установкиup значения в других классах и объектах.

В Java я бы использовал загрузчик классов Java и создал новый экземпляр, после чего я бы вызвал его конструктор.Как правильно сделать это в Scala?

Ответы [ 2 ]

4 голосов
/ 08 ноября 2010

Классы Scala являются классами Java, поэтому просто делайте то, что вы делаете в Java. Часто задаваемые вопросы о совместимости Scala Java не говорят конкретно о загрузчиках классов, но могут быть полезны, когда вы разберетесь.

2 голосов
/ 08 ноября 2010

Я давно написал в блоге запись об этом К сожалению, я не нашел время обновить его для Scala 2.8.

По существу это сводится к

  • делай как в Java
  • использование функций Scala для улучшения пользовательского интерфейса
...