Can I dispatch my root thought multiple module ?

I have in App::Main :

hook before => sub {
var xxx => "test";
}

and in App::Root;

get "/" => sub {
 return vars->{xxx}
}

But vars seems empty.

In my bin/app.psgi I have :

use Dancer;
use App::Main;
use App::Root;

start;