Unit testing 有没有更好的方法来解决emacs库依赖关系?

Unit testing 有没有更好的方法来解决emacs库依赖关系?,unit-testing,emacs,elisp,dependency-management,ert,Unit Testing,Emacs,Elisp,Dependency Management,Ert,我在尝试在emacs项目中运行测试文件时遇到了一个问题 例如,我克隆到我的主目录,将cd复制到test dir,然后使用emacs-batch-l ert-l nrepl-tests.el-f ert运行tests批处理并退出运行测试。但它找不到不在同一目录中的文件nrepl.el。因此,我将一个复制到~/nrep.el/test中。但它说“无法打开加载文件:clojure模式”。这是我关心的问题 我确实使用clojure模式和其他libs nrepl.el。但是它们都在不同的目录中(在我的例子

我在尝试在emacs项目中运行测试文件时遇到了一个问题

例如,我克隆到我的主目录,将cd复制到test dir,然后使用
emacs-batch-l ert-l nrepl-tests.el-f ert运行tests批处理并退出
运行测试。但它找不到不在同一目录中的文件nrepl.el。因此,我将一个复制到~/nrep.el/test中。但它说“无法打开加载文件:clojure模式”。这是我关心的问题


我确实使用clojure模式和其他libs nrepl.el。但是它们都在不同的目录中(在我的例子中是~/emacs.d/packs/live/clojure-pack/lib/)。为了运行测试,是否必须将这些文件复制到克隆的nrepl项目中?有没有更好的方法可以像我们在IDE中那样运行测试文件。例如,在Intellij中,我只需在测试文件中编写导入语句,它就会自动为我准备依赖项库。这让我很烦恼。我想知道是否有解决这个问题的最佳实践。

如果我理解正确,我的印象是,这正是您想要解决这些依赖性问题的原因:包维护人员需要编写一个小文件,其中包含包依赖性,包括开发依赖性,如ert,并通过
carton exec
运行emacs,这将确保所有内容都下载到某个目录中,并且如果我理解正确,此目录将添加到
加载路径中,我的印象是,这正是您想要克服这些依赖性问题的原因:包维护人员需要编写一个小文件,其中包含包依赖性,包括开发依赖性,如ert,并通过
carton exec
运行emacs,这将确保所有内容都下载到某个目录,并将该目录添加到
load path

您可能只需要使用提供的
Makefile
来运行测试。在这本书中,作者做了所有艰苦的工作,构建了正确的
加载路径
@lunaryorn没错。我忘了制作文件了。看来我必须学习一些make指令。您可能应该使用提供的
Makefile
来运行测试。在这本书中,作者做了所有艰苦的工作,构建了正确的
加载路径
@lunaryorn没错。我忘了制作文件了。看来我得学习一些制作说明了。