最近打包遇到了一个问题,打包完MAC的sdk包后,得到的是一个framework的文件夹,我们需要将这个framework传到ftp服务器上,另外,还要把这个文件夹下的Release文件夹里的文件替换掉源码Demo里的文件,也就是是ftp上要有framework文件夹和demo文件夹。这个framework文件夹,我们叫他LBCast_FrameWork,目录结构如下:
替换到Demo文件中的上面图片的“1” “2” 这两个文件夹,软链接文件正常情况是如下的(带这种小箭头的):
因为我是从mac机器上传包到windows的ftp机器上,所以我先压缩文件,然后再传。
我的步骤是:
(1)将文件夹HPCastResources.bundle 和 HPCastWork.framework 复制到Demo文件对应目录下
命令是: cp -rn LBCast_FrameWork/Release/* Demo/
(2)将Demo和LBCast_FrameWork 分别压缩成zip文件
命令:zip -r -q Demo.zip Demo
zip -r -q LBCast_FrameWork.zip LBCast_FrameWork
(3)用curl命令上传到ftp上:
curl -u ftp用户名:ftp密码 -T "Demo.zip" ftp://ftp的ip/output/
curl -u ftp用户名:ftp密码 -T "LBCast_FrameWork.zip" ftp://ftp的ip/output/
但是,当我从ftp上下载刚才传上来的Demo.zip 和LBCast_FrameWork.zip,解压后,软链接没有了!!!
调试(一定要在mac上调试,windows看不出软链接文件):
直接在mac压缩成zip,再解压是没问题的,但是执行zip -r 压缩,然后再用unzip 解压就出问题了,软连接不见了
想着压缩除了zip还有tar,我用tar试试,tar -cvf LBCast_FrameWork.tar LBCast_FrameWork 再解压,尽然没问题!!!
好了,都改成tar吧,我还是把Release下的文件复制到Demo里,然后将Demo也压缩成tar包,再传到ftp。
再下载试试,LBCast_FrameWork.tar解压了,软链接还在,嘻嘻,为自己的机智点个赞!!
再试试Demo.tar ,解压了,软链接没有了,是不是复制有问题啊,原文件没毛病啊,啊啊,苍天饶过谁啊!!
好吧,man cp 看看, -R 好像可以,有软链接的描述,改成cp -R LBCast_FrameWork/Release/* Demo/,mac上看了下,软链接可以了,嘻嘻,不能高兴太早了,再压缩成tar包,传到ftp上,下载Demo.tar 解压看看,软链接还在!!! 我真是棒棒哒!!!!
但是 why ??? 如果你知道,麻烦在评论里分享下~~
修改后的命令如下:
(1)将文件夹HPCastResources.bundle 和 HPCastWork.framework 复制到Demo文件对应目录下
命令是: cp -R LBCast_FrameWork/Release/* Demo/
(2)将Demo和LBCast_FrameWork 分别压缩成zip文件
命令:tar -cvf Demo.tar Demo
tar -cfv LBCast_FrameWork.tar LBCast_FrameWork
(3)用curl命令上传到ftp上:
curl -u ftp用户名:ftp密码 -T "Demo.tar" ftp://ftp的ip/output/
curl -u ftp用户名:ftp密码 -T "LBCast_FrameWork.tar" ftp://ftp的ip/output/