我正在使用reltool
. 输出文件夹rel/lib
包含所有应用程序及其ebin
文件夹打包到.ez
档案中,例如crypto
:
crypto-2.2
crypto-2.2/priv/ (with some files in the priv folder)
crypto-2.2.ez
crypto-2.2.ez/crypto-2.2/ebin/crypto.app
crypto-2.2.ez/crypto-2.2/ebin/ (with some .beam files in the ebin folder)
我从erl
文件rel
夹开始。文件夹的路径ebin
位于代码路径中,即code:get_path().
在其他中返回(对于lib
文件夹中的其他应用程序也是如此):
"/usr/home/g/work/project/rel/lib/crypto-2.2.ez/crypto-2.2/ebin"
但是当试图调用systools:make_tar("releases/0.1/project").
它时抱怨它找不到.app
文件(对于发布中提到的所有应用程序):
crypto: File not found: "crypto.app"
我看到.app
文件在存档中,只是systools
由于某种原因看不到它。我尝试在使用该选项ebin
调用时指定文件夹,但它似乎不起作用(缺少相同的错误)。还:make_tar
path
crypto.app
file:consult("/usr/home/g/work/project/rel/lib/crypto-2.2.ez/crypto-2.2/ebin/crypto.app").
给我:{error,enotdir}
。
也许systools
还没有处理档案?有没有其他方法可以从使用的版本创建 tar 存档reltool
?任何帮助将不胜感激。