我正在尝试按照Expo documentation中的说明创建自己的Expo模块。
当我运行命令npx create-expo-module
并填写它要求我提供的信息(npm包的名称,模块名称,GitHub配置文件等)时,它设法完成了模块创建的前两个步骤:
✔ Downloaded module template from npm
✔ Created the module from template files
但是在第三步中它给了我这个错误:
✖ Installing module dependencies
Error: npm exited with non-zero code: 1
at ChildProcess.completionListener (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\@expo\spawn-async\build\spawnAsync.js:41:23)
at Object.onceWrapper (node:events:628:26)
at ChildProcess.emit (node:events:513:28)
at ChildProcess.cp.emit (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\cross-spawn\lib\enoent.js:34:29)
at maybeClose (node:internal/child_process:1100:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:304:5)
...
at spawnAsync (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\@expo\spawn-async\build\spawnAsync.js:7:23)
at installDependencies (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\create-expo-module\build\packageManager.js:9:37)
at C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\create-expo-module\build\create-expo-module.js:49:56
at newStep (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\create-expo-module\build\utils.js:21:22)
at Command.main (C:\Users\super\AppData\Local\npm-cache\_npx\62900f925a4b91dc\node_modules\create-expo-module\build\create-expo-module.js:48:31) {
pid: 23924,
output: [ '', '' ],
stdout: '',
stderr: '',
status: 1,
signal: null
}
我能够毫无问题地使用expo init
创建新的Expo项目,并使用expo start
运行它们,所以我不知道问题可能是什么。我的Expo CLI版本是6.0.6,npm是8.19.2。
2条答案
按热度按时间2izufjch1#
1.只需运行npx node-expo-module并获取错误,删除node_modules并锁定文件
1.使用Cygwin安装-https://www.cygwin.com/install.html安装“rsync”包
1.添加路径到你的环境变量,我的路径是“C:\cygwin64\bin”
1.在你的项目根目录下安装Git bash并安装yarn(如果在添加路径到env vars的过程中打开了bash,不要忘记重新启动bash)
你已经准备好了,这只是windows相关的问题,如果你使用yarn,你在mac os上就可以了。
如果你在两个操作系统上都不使用yarn,你会得到一个错误。(内部错误:.@workspace:.:此软件包似乎不在您的锁定文件中;运行“yarn install”更新锁文件)
希望这个,能帮上忙。
ffvjumwh2#
在Mac上为我解决这个问题的步骤(对于非Mac,请参阅第二个问题-也许在Windows上测试IOS应用程序是不可能的,但第一个问题应该足以让你在没有示例应用程序ios的情况下编写代码,你可以只使用示例应用程序android):
请注意,有两个步骤,可以失败这两个固定对我来说:
1.“安装模块依赖关系”步骤失败
1.“在示例应用程序中安装依赖项”步骤失败
示例应用程序由expo模块 Bootstrap 自动创建
我采取的解决问题的步骤1:
rm /Users/mac/package.json
rm /Users/mac/yarn.lock
cd ~
yarn set version classic
cd Documents
yarn create expo-module my-module
(不要使用npx.不知道为什么这是我如何使它工作)我采取的步骤已解决问题2:
1.安装XCode(XCode CLI工具包本身是不够的)
1.打开XCode > Preferences > Location如果命令行工具下没有显示路径,只需重新选择路径