2016-09-25 3 views
0

Ich verstehe, dass ihre Clojure die sitzt auf der JVM, in der Sie Java-Bibliotheken verwenden können. Außerdem gibt es ClojureScript, mit dem Sie JavaScript-Bibliotheken verwenden können, aber ist es möglich, Bibliotheken von jedem in einer Clojure-Datei/Projekt zu mischen?Können Sie ClojureScript und JVM-Clojure im selben Projekt mischen?

+4

https://github.com/clojure/clojurescript/wiki/Using-cljc –

+0

Angesichts Java JDKs einschließlich JavaScript-Engines (Rhino und Nashorn in verschiedenen Java-Versionen) ... Ich vermute, dass es möglich sein könnte, ClojureScript auszuführen aus Ihrer JVM heraus. (Schnelle Google-Suche auf "ClojureScript in Nashorn" ergibt: https://github.com/bodil/cljs-nashorn) Ich weiß nicht, wie viele JavaScript-Bibliotheken in irgendeiner sinnvollen Weise innerhalb der JVM vs. Browser oder in Node.JS. –

+2

Hier ist ein Beispielprojekt, das sowohl clojure als auch clojurescript https://juxt.pro/blog/posts/edge.html https://github.com/juxt/edge/blob/master/README.md verwendet – CandiedCode

Antwort

0

Sie können Clojure in .cljc-Dateien schreiben, die von Clojure und ClojureScript gelesen werden können. Jeder plattformspezifische Code kann in Reader Conditionals eingebettet werden, sodass er nur auf der Host-Plattform gelesen wird. Viele Bibliotheken unterstützen cljc, obwohl sie konvertiert werden müssen, und es ist möglicherweise nicht immer sinnvoll, dies zu tun, wenn nicht viel gemeinsamer Code zwischen den beiden vorhanden ist. Weitere Informationen finden Sie unter http://clojure.org/guides/reader_conditionals.

Verwandte Themen