每当我尝试在函数中包含Timbre p
语句时,我都会收到错误:
project.clj
(defproject sketch "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.5.1"]
[com.taoensso/timbre "3.1.1"]])
core.clj
(ns user (:require [taoensso.timbre :as timbre]))
(timbre/refer-timbre)
(defn tst [a]
(p :tf (+ a a)))
输出(cider / nrepl)
Unable to resolve symbol: p in this context, compiling:(NO_SOURCE_PATH:2:3)
但profile
和spy
等其他Timbre函数/宏工作正常。
答案 0 :(得分:2)
p
性能分析宏is not exposed with refer-timbre,文档似乎已过时。
(require
'[taoensso.timbre.profiling :as profiling :refer (pspy pspy* profile defnp)])
作为you see here,p
只是pspy
的别名
(defmacro p [id & body] `(pspy ~id ~@body)) ; Alias
所以你可以改用pspy
。
答案 1 :(得分:0)
如果您只是对开发time函数所花费的时间感兴趣,那么就足够了。
cd /COMPLIANCE-48/workspace/AutoProfile_Exec/Driver
chmod +x chromedriver