Ответ 1
Просто удвоить его
scala> val name = "foo"
name: String = foo
scala> s"my.package.$name$$"
res0: String = my.package.foo$
Как я могу избежать знака доллара в интерполяции строк?
def getCompanion(name: String) = Class.forName(s"my.package.$name\$")
// --> "error: unclosed string literal"
Просто удвоить его
scala> val name = "foo"
name: String = foo
scala> s"my.package.$name$$"
res0: String = my.package.foo$