在带有 Android SDK 2.1 的 Windows XP 虚拟机上运行 Titanium Appcelerator 0.8.1
运行构建/安装应用程序时,出现以下错误(此处显示最后一行):
[TRACE] f = open(os.path.join(dest, dest_file), "w")
[TRACE] IOError: [Errno 13] Permission denied:
'C:\\Documents and Settings\\firstname.surname\\Desktop\\MyApp\\build\\android\\.classpath'
删除 .classpath 会导致创建 .classpath,但错误只会转移到它必须写入的下一个文件。
文件在一个git仓库中,通过msysgit checkout ,但是当文件直接从git服务器复制到Windows机器时会出现同样的错误。不幸的是,如果 build\android 文件丢失,Titanium 开发应用程序将不会为现有应用程序重建 Android 包,因此不将这些文件 checkin git 是不可能的。
文件似乎具有正确的权限 - 可由当前用户帐户写入,没有设置只读标志(通过“attrib”检查),并且已通过安全设置访问选项和所有者/文件和目录的高级对话(由 Windows IT 管理员在此处检查)
据我所知,没有其他文件打开(IOError 13 的可能原因)。
这可能是什么原因? Git 会是罪魁祸首吗?
最佳答案
回答我自己的问题以防其他人遇到同样的问题:
- 删除 stash 标志(使用
attrib -H
)修复了文件权限问题。
( stash 标志由 msysgit 设置,以匹配 Unix 中点文件的“stash ”特性)
关于windows - 为什么在写入以点开头的文件时,使用 Android SDK 会出现 Windows 文件权限错误(IO 错误 13)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2118606/