Reactjs 无法部署React应用程序

Reactjs 无法部署React应用程序,reactjs,firebase,react-router,github-pages,netlify,Reactjs,Firebase,React Router,Github Pages,Netlify,我尝试在Github页面、Firebase和Netlify上部署我的django react应用程序。 在使用gh页面在github页面上部署时,我遇到了这个错误 sh: 1: gh-pages: not found npm ERR! file sh npm ERR! code ELIFECYCLE npm ERR! errno ENOENT npm ERR! syscall spawn npm ERR! blog_frontend@0.1.0 deploy: `gh-pages -d buil

我尝试在Github页面、Firebase和Netlify上部署我的django react应用程序。 在使用gh页面在github页面上部署时,我遇到了这个错误

sh: 1: gh-pages: not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! blog_frontend@0.1.0 deploy: `gh-pages -d build`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the blog_frontend@0.1.0 deploy script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pika/.npm/_logs/2018-08-09T15_30_32_229Z-debug.log
然后尝试Firebase。 首先,我安装firebase工具

npm install -g firebase-tools
然后我无法在目录中初始化firebase。尝试时

firebase init
上面说

firebase: command not found
netlify也是如此

这是gh页面错误的日志文件

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'deploy' ]
2 info using npm@6.2.0
3 info using node@v10.8.0
4 verbose run-script [ 'predeploy', 'deploy', 'postdeploy' ]
5 info lifecycle blog_frontend@0.1.0~predeploy: blog_frontend@0.1.0
6 verbose lifecycle blog_frontend@0.1.0~predeploy: unsafe-perm in lifecycle true
7 verbose lifecycle blog_frontend@0.1.0~predeploy: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/pika/Desktop/django/Django-React-Blog/frontend/blog_frontend/node_modules/.bin:/home/pika/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
8 verbose lifecycle blog_frontend@0.1.0~predeploy: CWD: /home/pika/Desktop/django/Django-React-Blog/frontend/blog_frontend
9 silly lifecycle blog_frontend@0.1.0~predeploy: Args: [ '-c', 'npm run build' ]
10 silly lifecycle blog_frontend@0.1.0~predeploy: Returned: code: 0  signal: null
11 info lifecycle blog_frontend@0.1.0~deploy: blog_frontend@0.1.0
12 verbose lifecycle blog_frontend@0.1.0~deploy: unsafe-perm in lifecycle true
13 verbose lifecycle blog_frontend@0.1.0~deploy: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/pika/Desktop/django/Django-React-Blog/frontend/blog_frontend/node_modules/.bin:/home/pika/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
14 verbose lifecycle blog_frontend@0.1.0~deploy: CWD: /home/pika/Desktop/django/Django-React-Blog/frontend/blog_frontend
15 silly lifecycle blog_frontend@0.1.0~deploy: Args: [ '-c', 'gh-pages -d build' ]
16 info lifecycle blog_frontend@0.1.0~deploy: Failed to exec deploy script
17 verbose stack Error: blog_frontend@0.1.0 deploy: `gh-pages -d build`
17 verbose stack spawn ENOENT
17 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:48:18)
17 verbose stack     at ChildProcess.emit (events.js:182:13)
17 verbose stack     at maybeClose (internal/child_process.js:962:16)
17 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:249:5)
18 verbose pkgid blog_frontend@0.1.0
19 verbose cwd /home/pika/Desktop/django/Django-React-Blog/frontend/blog_frontend
20 verbose Linux 4.15.0-29-generic
21 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy"
22 verbose node v10.8.0
23 verbose npm  v6.2.0
24 error file sh
25 error code ELIFECYCLE
26 error errno ENOENT
27 error syscall spawn
28 error blog_frontend@0.1.0 deploy: `gh-pages -d build`
28 error spawn ENOENT
29 error Failed at the blog_frontend@0.1.0 deploy script.
29 error This is probably not a problem with npm. There is likely additional logging output above.
30 verbose exit [ 1, true ]
0信息如果它以ok结尾,它就工作了
1详细cli['/usr/local/bin/node','/usr/local/bin/npm','run','deploy']
2信息使用npm@6.2.0
3信息使用node@v10.8.0
4详细的运行脚本['predeploy','deploy','postdeploy']
5信息生命周期博客_frontend@0.1.0~predeploy:blog_frontend@0.1.0
6详细的生命周期日志_frontend@0.1.0~predeploy:生命周期中的不安全烫发是真的
7详细的生命周期日志_frontend@0.1.0~predeploy:PATH:/usr/local/lib/node_modules/npm/node_modules/npm lifecycle/node gyp bin:/home/pika/Desktop/django/django React Blog/frontend/node_modules/.bin:/home/pika/.local/bin:/usr/local/sbin:/usr/sbin:/usr/sbin:/usr/sbin:/usr/sbin:/sbin:/usr/games:/usr/games:/usr/local/games/games:/snap/bin
8详细的生命周期日志_frontend@0.1.0~predeploy:CWD:/home/pika/Desktop/django/django React Blog/frontend/Blog_frontend
9.生命周期博客_frontend@0.1.0~predeploy:Args:['-c',npm运行构建']
10愚蠢的生命周期博客_frontend@0.1.0~predeploy:返回:代码:0信号:null
11信息生命周期博客_frontend@0.1.0~deploy:blog_frontend@0.1.0
12详细的生命周期日志_frontend@0.1.0~deploy:生命周期中的不安全perm为true
13详细的生命周期日志_frontend@0.1.0~deploy:PATH:/usr/local/lib/node_modules/npm/node_modules/npm/lifecycle/node-gyp-bin:/home/pika/Desktop/django/django-React Blog/frontend/node_-modules/.bin:/home/pika/.local/bin:/usr/local/bin:/usr/sbin:/sbin:/usr/sbin:/usr/sbin:/usr/games:/usr/local/games/games:/snap/bin
14详细的生命周期日志_frontend@0.1.0~deploy:CWD:/home/pika/Desktop/django/django React Blog/frontend/Blog_frontend
15愚蠢的生命周期博客_frontend@0.1.0~deploy:Args:['-c','gh-d build']
16信息生命周期博客_frontend@0.1.0~deploy:无法执行部署脚本
17详细堆栈错误:日志_frontend@0.1.0deploy:`gh pages-d build`
17详细堆栈生成eNONT
17子进程上的详细堆栈。(/usr/local/lib/node_modules/npm/node_modules/npm lifecycle/lib/spawn.js:48:18)
17 ChildProcess.emit上的详细堆栈(events.js:182:13)
17 maybeClose的详细堆栈(internal/child_process.js:962:16)
17 Process.ChildProcess.\u handle.onexit处的详细堆栈(internal/child\u Process.js:249:5)
18冗长的pkgid博客_frontend@0.1.0
19详细的cwd/home/pika/Desktop/django/django-React-Blog/frontend/Blog_-frontend
20详细Linux 4.15.0-29-generic
21详细argv“/usr/local/bin/node”“/usr/local/bin/npm”“运行”“部署”
22详细节点v10.8.0
23详细的npm v6.2.0
24错误文件sh
25错误代码ELIFECYCLE
26错误无错误
27错误系统调用生成
28错误日志_frontend@0.1.0deploy:`gh pages-d build`
28错误生成事件
29日志中的错误失败_frontend@0.1.0部署脚本。
29错误这可能不是npm的问题。上面可能还有其他日志输出。
30详细退出[1,正确]

检查package.json文件中是否缺少您的
gh页面的依赖项。

我知道这很晚了,但也许它会帮助处于同样困境的人。我最近在发布到Github页面时遇到了类似的错误,我仍然不知道这是怎么发生的,但不知何故,我的
gh页面
依赖项不再安装。我想我可能在一根废弃的树枝上用过

只需运行
npm安装--在终端中保存gh页面
,即可恢复我的应用程序。。。还有我的理智,哈哈。这真是一个令人讨厌的小错误


我希望这仍然与处于类似修复中的人有关。

我刚刚遇到了同样的错误。我使用的是Firebase主机,但添加了Firebase云功能。这修改了我的
firebase.json
文件:

{
  "hosting": {
    "public": "build",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  },
  "functions": {
  }
}
我最初使用eslint设置云函数,但后来决定将其删除。它似乎有空的
“函数”:{}
部分破坏了部署,即使在执行
firebase部署时也是如此——只托管

使用
--debug
运行,或者只是反复尝试(Firebase工具似乎会拾取重复故障并转储日志文件),揭示了实际原因(至少对我而言):

[2020-05-16T20:26:53.762Z]类型错误[ERR_INVALID_ARG_TYPE]:“path”参数必须是string类型。接收未定义
在validateString(internal/validators.js:121:11)
在Object.join(path.js:1039:7)
在Object.checkfunctionsdkversion[as fn](/usr/lib/node_modules/firebase tools/lib/checkFirebaseSDKVersion.js:33:28)
指挥。(/usr/lib/node_modules/firebase tools/lib/command.js:159:30)
在Generator.next()处
完成时(/usr/lib/node_modules/firebase tools/lib/command.js:5:58)
在处理和拒绝时(内部/process/task_queues.js:97:5)
错误:发生意外错误。
看起来要么我的json不适合firebase,要么firebase本身有问题


通过删除
firebase.json
文件中的空
,“函数”:{}
部分,我可以让主机部署重新工作。

您是否尝试关闭终端并再次尝试该命令?@I Putu Permana。。。我甚至重新启动了我的笔记本电脑。没有足够的信息。2.您需要选择一个系统来部署并集中精力。这一个问题中的问题太多了。@talves。。我已经添加了调试日志。很长一段时间以来,我一直在尝试将我的应用程序部署到github页面上,但仍然没有任何进展。这也让我意识到我没有安装
gh页面。
[2020-05-16T20:26:53.762Z] TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
    at validateString (internal/validators.js:121:11)
    at Object.join (path.js:1039:7)
    at Object.checkFunctionsSDKVersion [as fn] (/usr/lib/node_modules/firebase-tools/lib/checkFirebaseSDKVersion.js:33:28)
    at Command.<anonymous> (/usr/lib/node_modules/firebase-tools/lib/command.js:159:30)
    at Generator.next (<anonymous>)
    at fulfilled (/usr/lib/node_modules/firebase-tools/lib/command.js:5:58)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

Error: An unexpected error has occurred.