Common Lisp:获取ASDF包的版本

Ant*_*oy' 4 metadata version common-lisp asdf package

我知道我可以获得ASDF本身的版本号(asdf:asdf-version).但是同样的情况不适用于我使用ASDF加载的所有其他软件包,例如(my-system:my-system-version).是否有任何编程方式来获取:version系统定义中关键字的值?

(defsystem my-system
   ...
   :version "0.1"
   ...)
Run Code Online (Sandbox Code Playgroud)

我正在编写一个简单的HTTP服务器,并希望在Server HTTP头中包含版本号.无论如何,任何程序都需要能够在某处打印出用于获取用户信息的版本号.当然,我希望只在一个地方定义版本号,因为我可能忘记在多个地方更新它.

Vse*_*kin 7

(slot-value (asdf:find-system 'my-system) 'asdf:version)
Run Code Online (Sandbox Code Playgroud)

  • (asdf:component-version(asdf:find-system'my-system))将是一个改进. (6认同)