Because Person is a dependency for Test, you have to compile Person first (well, not later; you can pass an instruction to compile both together).
I think I may have been mistaken about that. I think the rest of the post is all right.
A few minutes ago, I wrote:Your exception in initialiser has probably got nothing to do with packages.
. . . .
Damn! I didn’t notice that.
Kemal Sokolovic wrote: . . . because that class is not visible from other packages (it has a default access modifier). . . .