我正在使用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_tarpathcrypto.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?任何帮助将不胜感激。