Eug*_*sky 22
Debian的
执行以下操作:
apt-get install nailgun # install nailgun
java -server -jar /usr/share/java/nailgun.jar& # run nailgun server
ng-nailgun ng-cp /usr/share/java/clojure-1.4.jar # add clj to classpath
Run Code Online (Sandbox Code Playgroud)
现在服务器正在运行和配置,您可以在其上运行clojure脚本:
ng-nailgun clojure.main path/to/myscript.clj
Run Code Online (Sandbox Code Playgroud)
在我的例子中,实际脚本的启动时间降至80毫秒,相比之下,没有钉枪的启动时间为900毫秒.
为了使运行实际的脚本更方便,创建一个可执行文件ng-clojure包含以下行,并把它放在您的路径:
ng-nailgun clojure.main "$@"
Run Code Online (Sandbox Code Playgroud)
在你的clojure shell脚本中,将其添加为第一行:
#!/usr/bin/env ng-clojure
Run Code Online (Sandbox Code Playgroud)
然后使clojure shell脚本可执行并运行它
path/to/myscript.clj
Run Code Online (Sandbox Code Playgroud)
OSX
brew install nailgun
ng-server
ng ng-cp ~/.m2/repository/org/clojure/clojure/1.5.1/clojure-1.5.1.jar
Run Code Online (Sandbox Code Playgroud)
然后执行上面的脚本.
更新:使用它一段时间后,似乎没有完美的工作.有时我会得到在没有使用nailgun的情况下运行时不会发生的随机错误,有时似乎存在内存泄漏会导致指甲枪JVM随时间消耗所有内存,最终使系统交换到磁盘.还没有内存描述这个,但想要添加这个单挑.