[英]Cannot get instrumentable syms in project via Leiningen plugin
我正在嘗試編寫一個基於clojure.spec.alpha
的 leiningen 插件。 除其他事項外,我想獲得項目中已規范的所有功能。 這是通過在clojure.spec.test.alpha
調用instrumentable-syms
來完成的。 我的插件中有一個函數可以執行此操作,但是當在另一個項目的上下文中運行時(通過eval-in-project
),可檢測符號列表為空。 我懷疑這是因為使用插件的項目中對fdef
的調用(通常是源文件中的頂級表單並注冊規范)沒有被評估,因此在調用instrumentable-syms
時不會被拾取。
我的問題是,我如何確保這些調用得到評估,以便我的插件可以在項目中找到所有規范的函數。
嘗試做一些事情來加載相關的命名空間,從而使您的程序“栩栩如生”,也許如果您有一個像src/orgname/project/core.clj
這樣的文件,那么您可以嘗試調用:
(load "orgname/project/core")
從項目中運行的代碼塊內。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.