Skip to content

Using External ASM

Justin Conklin edited this page Apr 27, 2018 · 2 revisions

Since 0.3.0 this feature is no longer supported/necessary: an ASM 6.0 dependency is required.

Allowing users to choose added extra library complexity and required various hacks for new APIs missing in Clojure's outdated ASM version.

Requiring insn.objectweb-asm is now a no-op in 0.3.1.

Pre 0.3.0 instructions

Simply add a dependency on the ASM version you wish to use to your project, for leiningen, something like [org.ow2.asm/asm "5.2"]. Now just require insn.objectweb-asm before loading subsequent insn namespaces.

(ns my-project.core
  (:require insn.objectweb-asm
            [insn.core :as insn]))

Alternatively, you can define the insn.objectweb-asm property. For leiningen add "-Dinsn.objectweb-asm" to your :jvm-opts.