我最近在官方Mozilla附加组件网站上收到了我的一个附加组件评论员的以下评论:
XPI中的权限已损坏。大多数文件和目录都没有预期的读取和执行权限,或者根本没有任何权限。
我不知道文件权限是XPI文件中的问题。据我所知,我的XPI中没有文件需要执行位设置(我只打包标准的东西:XUL,JavaScript,CSS等)。我使用Cygwin zip工具在Windows中创建我的XPI,并且由于Windows对文件权限一无所知,因此它们不会像在Linux中那样存储。
XPI中的文件和目录条目需要什么文件权限? MDN的Extension Packaging页面有以下引用,但没有关于应该是什么的相关详细信息:
...您必须验证是否正确设置了扩展目录和文件的文件系统权限。否则,Extension Manager可能无法正常使用扩展,或者扩展本身可能无法正常工作。
答案 0 :(得分:1)
如果您在Windows上创建扩展程序包但扩展程序稍后在Linux或OS X上使用,则通常会出现此问题 - Windows没有任何文件权限可以放入ZIP存档并在Linux或OS X上解压缩有时会创建虚假文件权限(000
而不是通常的755
或644
)。您可以尝试使用其他ZIP包装器,例如Info-ZIP不会对我造成这样的问题。更好的是,根本不需要对您的扩展程序进行解压缩 - 经常使用<em:unpack>
但很少真正需要。