Hello everyone, I had a somewhat wild idea of trying to modify the behavior of the StandardDoclet to write directly to a ZIP file (instead of the file system). All the pieces fall into place relatively easily:
1) Create a custom Doclet that extends (public) StandardDoclet and overrides the run method with: public boolean run(DocletEnvironment docEnv) { return super.run(new CustomEnvironment(docEnv)); } 2) CustomEnvironment delegates everything to docEnv except it returns a ForwardingJavaFileManager over the docEnv.getJavaFileManager with a bunch of "get*Input" methods substituted. The only problem is - it doesn't work. :) Internally WorkArounds has a cast to an internal implementation type: public WorkArounds(BaseConfiguration configuration) { [...] this.toolEnv = ((DocEnvImpl)this.configuration.docEnv).toolEnv; } And it's a showstopper (maybe there are others but I didn't have a chance to try). Is there any way forward out of this (or an alternative take I can try)? Dawid