Scala giving me "illegal start of definition"
It looks like you're trying to declare the package
membership in a Scala script (run using the scala
command) or in the REPL.
Only files defining just classes and objects which are compiled with scalac
may be defined as belonging to a package.
When you run code in a script or a REPL session, behind the scenes it is actually compiled inside a method of an object, in which scope a package declaration wouldn't be legal.
Since Scala 2.11.0-M7 you can use :paste -raw
(fix for issue SI-5299). This option allows defining packages in the REPL:
scala> :paste -raw
// Entering paste mode (ctrl-D to finish)
package Foo
class Bar
// Exiting paste mode, now interpreting.
scala> import Foo._
import Foo._
scala> new Bar
res1: Foo.Bar = Foo.Bar@3ee2cf81