Я предполагаю, что класс, который вы тестируете, написан на Java, так как вы должны приложить все усилия, чтобы создать в Scala элемент, содержащий только пакеты.
Короче говоря, это невозможно. Каждая строка в REPL упакована в свой собственный пакет, поэтому ему не будет разрешен доступ к другому участнику, имеющему только пакет, из любого другого пакета. Несмотря на наличие недокументированного системного свойства для изменения префикса имени пакета по умолчанию, используемого для переноса, имя пакета по-прежнему генерируется автоматически путем увеличения числа:
$ scala -Xprint:parser -Dscala.repl.naming.line=foo.line
scala> val x = 1
[[syntax trees at end of parser]]// Scala source: <console>
package foo.line1 {
object $read extends scala.ScalaObject {
// snip ...
object $iw extends scala.ScalaObject {
// snip ...
object $iw extends scala.ScalaObject {
// snip ...
val x = 1
}
}
}
Предполагая, что это то, что вы делаете часто, вы можете создать файл, который облегчает использование отражения, а затем загрузить его в REPL с помощью команды :load
.