Too Long; Didn't Read
Bazel is not aware of the fact that a Bazel plugin can’t work with Bazel. Instead of hardcoding our dependencies, we get them from command line. We use KrotoPlus plugin to create a wrapper around the Bazel project. We then use that wrapper to run Bazel in the same directory your project is in. Bazel will not be able to work with a well defined project structure. We need to use this wrapper to build Bazel and then generate classes based on that.