我一直致力于Firebase功能项目,在本地运行该服务进行测试。
一切正常,但后来我将源文件夹移动到一个新位置(进入源代码控制),现在它不会运行,因为某些地方,某处记住项目的旧位置
所以,Firebase'记住'项目/来源的原始位置?
我该如何解决?
平台:Windows 7
节点:v6.11.1(建议:https://cloud.google.com/functions/docs/writing)
以下是我运行firebase服务时的输出结果 - 仅仅是函数'并点击服务网址。
忽略"无法模拟......"和#34;没有HTTPS ..." - 这很正常。 下一个"错误:" line,以及在点击URL时发出的其余内容。
重点是:
a)我的项目所在的文件夹显示在第一行(标准Windows CMD提示方式)
b)"找不到模块"错误正在查看完全不同 FOLDER 即可。事实上,它正在寻找项目的用途。
D:\_DEV\svn\FredSays\onGoogleAssistant\functions>firebase serve --only functions
=== Serving from 'D:\_DEV\svn\FredSays\onGoogleAssistant'...
i functions: Preparing to emulate HTTPS functions. Support for other event types coming soon.
! functions: Failed to emulate FredSays
i functions: No HTTPS functions emulated. Support for other function types are coming soon.
error: module.js:471
throw err;
^
Error: Cannot find module 'D:\_DEV\FredSays\actionssdk-say-number-nodejs-master\functions'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at process.on.e (D:\_TOOLS\nvm\v6.11.1\node_modules\firebase-tools\node_modules\@google-cloud\functions-emulator\src\supervisor\worker.js:64:28)
at emitTwo (events.js:106:13)
at process.emit (events.js:191:7)
at process.nextTick (internal/child_process.js:758:12)
at _combinedTickCallback (internal/process/next_tick.js:73:7)
at process._tickCallback (internal/process/next_tick.js:104:9)
error: Function worker crashed with exit code: 1
我无法在列出旧位置的项目树中找到任何内容。 我已经尝试了以下所有方法:
npm cache clean
firebase init functions
firebase logout & firebase login
DEL /S /Q node_modules & npm install
npm uninstall -g firebase-tools & npm install -g firebase-tools
以上所有都没有帮助。
请帮忙。我的项目现在已经死了。
答案 0 :(得分:1)
我在Ubuntu开发环境中研究同样的问题时遇到了你的帖子。我将一些代码从NFS共享复制到我的主目录,并且在我的生活中不能让它在函数模拟器中运行 - 其中一个问题是代码仍然在NFS安装的路径上运行而不是我在运行VS Code的本地路径。
移动代码后重新归位代码所需的命令是
$firebase use
Active Project: fbgo-9f73a
Project aliases for /home/user/firebase/chappy:
* default (site-ID)
Run firebase use --add to define a new project alias.
然后启动模拟器
$ firebase serve --only functions,hosting
=== Serving from '/home/user/firebase/chappy'...
i functions: Preparing to emulate functions.
i hosting: Serving hosting files from: public
✔ hosting: Local server: http://localhost:5000
✔ functions: app: http://localhost:5003/site-ID/us-central1/app
不幸的是,我没有'之前和之后'对此100%确定,请告诉我这是否适合您。