ReactNative - 错误:生成cmd.exe ENOENT

时间:2017-04-07 19:53:40

标签: react-native

在执行react-native run-android时,收到错误消息"错误:生成cmd.exe ENOENT"

环境:
反应:16.0.0-alpha.6,
本土反应:0.43.1
操作系统:Windows 10
node.js:6.9.2
纱线:0.22.0

c:\sampleproject>react-native start
.....
Running packager on port 8088.
.....

c:\sampleproject>react-native run-android
.....
Installing APK 'app-debug.apk' on 'Nexus_5X_API_23_1(AVD) - 6.0' for 
app:debug
Installed on 1 device.

BUILD SUCCESSFUL

Total time: 14.114 secs
Running C:\Users\User\AppData\Local\Android\sdk/platform-tools/adb -s emulator-5554 reverse tcp:8081 tcp:8081
Starting the app on emulator-5554 (C:\Users\User\AppData\Local\Android\sdk/platform-tools/adb -s emulator-5554 
shell am start -n com.sampleproject/.MainActivity)...
Starting: Intent { cmp=com.sampleproject/.MainActivity }
events.js:160
throw er; // Unhandled 'error' event
^

Error: spawn cmd.exe ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)

请协助解决问题。

3 个答案:

答案 0 :(得分:8)

检查系统环境变量并在系统变量C:\windows\system32中添加Paths

答案 1 :(得分:0)

打包程序端口(8088)和tcp端口(8081)不相同。当两个端口相同时,问题就解决了。

答案 2 :(得分:0)

运行命令' adb reverse tcp:8081 tcp:8081'在你的android sdk平台工具文件夹中。

我认为您没有安装纱线尝试使用巧克力或其他东西进行安装。它应该在创建项目之前安装(react-native init命令)。

修改 在最近版本的react-native中,他们修复了它。如果您想要完全免于此卸载节点(完全卸载Completely remove node请参阅此链接)并重新安装节点,react-native-cli然后创建新项目。