Can';无法执行python脚本,权限被拒绝?
我正在尝试使用“appcelerator”(iphone/android的跨平台开发)编译一个项目。只是评估一下。它似乎运行了一些python脚本来进行构建,但无法使其工作(并且在那里的帮助论坛上没有任何进展)。看起来好像是权限错误,但我想不出来。我想在这里尝试一下,以防这在python中是一件熟悉的事情:Can';无法执行python脚本,权限被拒绝?,python,Python,我正在尝试使用“appcelerator”(iphone/android的跨平台开发)编译一个项目。只是评估一下。它似乎运行了一些python脚本来进行构建,但无法使其工作(并且在那里的帮助论坛上没有任何进展)。看起来好像是权限错误,但我想不出来。我想在这里尝试一下,以防这在python中是一件熟悉的事情: Exception occured while building project: Traceback (most recent call last): File "/Library/
Exception occured while building project:
Traceback (most recent call last):
File "/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/builder.py", line 2089, in <module>
s.build_and_run(True, avd_id, device_args=device_args)
File "/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/builder.py", line 1934, in build_and_run
run_result = run.run(dex_args, warning_regex=r'warning: ')
File "/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/run.py", line 36, in run
process = subprocess.Popen(args, stderr=subprocess.PIPE, stdout=subprocess.PIPE)
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 595, in __init__
errread, errwrite)
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 1106, in _execute_child
raise child_exception
OSError: [Errno 13] Permission denied
生成项目时发生异常:
回溯(最近一次呼叫最后一次):
文件“/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/builder.py”,第2089行,在
s、 构建和运行(True,avd_id,device_args=device_args)
文件“/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/builder.py”,第1934行,内置和运行
run_result=run.run(dex_args,warning_regex=r'warning:)
文件“/Library/Application Support/Titanium/mobilesdk/osx/1.8.2/android/run.py”,第36行,运行中
process=subprocess.Popen(args,stderr=subprocess.PIPE,stdout=subprocess.PIPE)
文件“/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py”,第595行,在__
错误读取,错误写入)
文件“/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py”,第1106行,在执行子进程中
引发子对象异常
OSError:[Errno 13]权限被拒绝
我已经将“run.py”和“builder.py”的权限设置为777。“subprocess.py”文件也是777。我仍然收到“权限被拒绝”错误。这里有什么明显的我遗漏的吗?我是os 10.6上的管理员用户
谢谢问题不在您提到的任何python文件中,而是在应该由
subprocess.Popen
语句执行的任何命令中
要解决问题,您可以尝试使用来调试问题,或者只需编辑run.py
并添加:
print args
在
subprocess.Popen
之前,找出权限不足的命令。请显示您试图执行的代码。无论您希望完成什么,chmod 777
都是错误和危险的。您将希望尽快恢复到sane权限(对于您的用例,可能是chmod 755
),并且如果您在面向公众的系统上有世界可写的系统文件,至少要调查它是否可能被破坏,并用作闯入组织网络的轴心点。啊,太棒了,谢谢,我按照您的建议打印出了该函数试图调用的内容,似乎它试图在android sdk中执行一个没有正确权限的脚本。对该文件进行了更改,现在可以使用了。谢谢伟大的回答@jcollado!在我的例子中,[path to android sdk]/android sdk linux/tools/zipalign没有正确的权限<代码>sudo chmod 777 zipalign在钛合金2.0.2GA上为我成功