Windows 8上的Cordova CLI无法找到挂钩

时间:2014-01-12 18:24:48

标签: android cordova command-line-interface

我正在尝试使用我的Win8机器上的cordova cli编译我的phonegap项目。我已经更新了所有Android SDK,更新了cordova和phonegap,但我无法构建我的项目。我收到一个错误,即.cordova / hooks / any_hook为空。

我查看了该目录,看不到其中的任何文件。这些文件如何到达那里并且最新版本的cordova坏了?到目前为止,我一直在我的Mac上进行编译,因为我无法正确设置PC,所以今天我决定对它进行破解并失败。

我甚至使用CLI创建了一个新的hello world项目,但由于假定缺少钩子文件而仍无法构建该东西。任何人都对此有任何见解。?

另外,我尝试在ADMIN和常规模式下使用命令提示符。仍然没有运气。

编辑:

我正在使用phonegap 3.3.0-4.18.0

钩子的路径: Z:\ projecttitleroot \ projecttitle.cordova \钩

使用调试建立PHONEGAP的输出:

[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] compiling Android...
[error] ENOENT, no such file or directory 'Z:\myprojectroot\myproject\.cordova\hooks\before_build'

我想指出我正在使用phonegap命令来编译和运行,而不是根据最新版本的文档而不是cordova。

如果我跑:

cordova -d build android

我明白了:

Z:\myprojectroot\myproject>cordova -d build android

C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:126
                    throw e;
                      ^
Error: ENOENT, no such file or directory 'Z:\myprojectroot\myproject\.cordova\hooks\before_build'    at Object.fs.readdirSync (fs.js:654:18)
at C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\src\hooker.js:64:34
at _fulfilled (C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:798:54)
at self.promiseDispatch.done (C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:827:30)
at Promise.promise.promiseDispatch (C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:760:13)
at C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:821:14
at flush (C:\Users\MYUSER\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:108:17)
at process._tickCallback (node.js:415:13)
at Function.Module.runMain (module.js:499:11)
at startup (node.js:119:16)

Z:\myprojectroot\myproject>

1 个答案:

答案 0 :(得分:0)

确保将钩子放入hooks目录中的子目录中。

钩子的路径:Z:\ projecttitleroot \ projecttitle.cordova \ hooks \ before_build \