separate out static dependencies of core on java backend

**please review**