Skip to content

Fails to produce class file for namespaces marked with (:gen-class)... #7

@jszakmeister

Description

@jszakmeister

The short form: setting the aotCompile to true causes my app to die with an exception complaining that "clojure.pprint.proxy$java.io.Writer$IDeref$PrettyFlush$4923d848 cannot be cast to clojure.pprint.PrettyFlush".

After some googling, I turned up this. The summary: it seems like aot-compiling clojure.pprint is a bad idea, due to some classloader stuff happening in 1.8 or better.

So I tried removing the aotCompile flag, and I have the namespace containing my -main method marked with (:gen-class) but no class file is generated for it. This means I can't set the Main-Class metadata for the jar and have it execute my application automatically.

Is this expected behavior? Is there a better way to go about getting what I want? I had to drop back to Clojure 1.7.0 for the moment, since it doesn't suffer from the issue, but that's not a good long-term tactic. :-)

I should mention that this isn't critical, but we are testing driving your plugin to see how well it works with Gradle. Outside of this issue, there's been no troubles.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions