(ns cork.screw.maven (:import [org.apache.maven.cli ConsoleDownloadMonitor] [org.apache.maven.embedder MavenEmbedder MavenEmbedderConsoleLogger PlexusLoggerAdapter] [org.apache.maven.monitor.event DefaultEventMonitor])) (let [maven (MavenEmbedder.) basedir "/home/phil/src/corkscrew" pom-file "/home/phil/src/corkscrew/pom.xml"] (.setClassLoader maven (.getContextClassLoader (Thread/currentThread))) (.setLogger maven (MavenEmbedderConsoleLogger.)) (.start maven)) ;; Trying to translate the setUp method from: ;; http://p.hagelb.org/MavenEmbedderTest.java.html ;; Results in this error: ;; org.apache.maven.embedder.MavenEmbedderException: Cannot lookup required component. (maven.clj:0) ;; at clojure.lang.Compiler.eval(Compiler.java:4543) ;; at clojure.lang.Compiler.load(Compiler.java:4857) ;; at clojure.lang.Compiler.loadFile(Compiler.java:4824) ;; at clojure.lang.RT$4.invoke(RT.java:273) ;; at swank.commands.basic$compile_file_for_emacs_STAR___733.invoke(basic.clj:109) ;; at swank.commands.basic$compile_file_for_emacs__736.invoke(basic.clj:126) ;; at clojure.lang.Var.invoke(Var.java:354) ;; at cork.screw.maven$eval__2058.invoke(NO_SOURCE_FILE) ;; at clojure.lang.Compiler.eval(Compiler.java:4532) ;; at clojure.core$eval__3990.invoke(core.clj:1728) ;; at swank.core$eval_in_emacs_package__304.invoke(core.clj:58) ;; at swank.core$eval_for_emacs__381.invoke(core.clj:126) ;; at clojure.lang.Var.invoke(Var.java:354) ;; at clojure.lang.AFn.applyToHelper(AFn.java:179) ;; at clojure.lang.Var.applyTo(Var.java:463) ;; at clojure.core$apply__3243.doInvoke(core.clj:390) ;; at clojure.lang.RestFn.invoke(RestFn.java:428) ;; at swank.core$eval_from_control__307.invoke(core.clj:65) ;; at swank.core$spawn_worker_thread__404$fn__435$fn__437.invoke(core.clj:168) ;; at clojure.lang.AFn.applyToHelper(AFn.java:171) ;; at clojure.lang.AFn.applyTo(AFn.java:164) ;; at clojure.core$apply__3243.doInvoke(core.clj:390) ;; at clojure.lang.RestFn.invoke(RestFn.java:428) ;; at swank.core$spawn_worker_thread__404$fn__435.doInvoke(core.clj:164) ;; at clojure.lang.RestFn.invoke(RestFn.java:402) ;; at clojure.lang.AFn.run(AFn.java:37) ;; at java.lang.Thread.run(Thread.java:636) ;; Caused by: org.apache.maven.embedder.MavenEmbedderException: Cannot lookup required component. ;; at org.apache.maven.embedder.MavenEmbedder.start(MavenEmbedder.java:644) ;; at cork.screw.maven$eval__2064.invoke(maven.clj:13) ;; at clojure.lang.Compiler.eval(Compiler.java:4532) ;; ... 26 more ;; Caused by: org.codehaus.plexus.component.repository.exception.ComponentLookupException: Component descriptor cannot be found in the component repository: org.apache.maven.project.MavenProjectBuilder. ;; at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:323) ;; at org.codehaus.plexus.embed.Embedder.lookup(Embedder.java:78) ;; at org.apache.maven.embedder.MavenEmbedder.start(MavenEmbedder.java:610) ;; ... 28 more