Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 使用lerna和pm2为React/Next/express/typescript项目设置monorepo_Reactjs_Typescript_Pm2_Lerna - Fatal编程技术网

Reactjs 使用lerna和pm2为React/Next/express/typescript项目设置monorepo

Reactjs 使用lerna和pm2为React/Next/express/typescript项目设置monorepo,reactjs,typescript,pm2,lerna,Reactjs,Typescript,Pm2,Lerna,我正在做一个项目,我想为它建立一个Monorepo架构 目前我有两个包: 前端/包含带有typescript的React(下一个)应用程序 服务器/也是使用typescript的express应用程序 这是我的项目架构: ├── Makefile ├── ecosystem.config.js ├── lerna.json ├── package-lock.json ├── package.json ├── packages │   ├

我正在做一个项目,我想为它建立一个Monorepo架构

目前我有两个包:

  • 前端/包含带有typescript的React(下一个)应用程序
  • 服务器/也是使用typescript的express应用程序
这是我的
项目架构

    ├── Makefile
    ├── ecosystem.config.js
    ├── lerna.json
    ├── package-lock.json
    ├── package.json
    ├── packages
    │   ├── front
    │   │   ├── components
    │   │   ├── interfaces
    │   │   ├── package-lock.json
    │   │   ├── package.json
    │   │   ├── pages
    │   │   ├── tsconfig.json
    │   │   ├── utils
    │   │   └── yarn.lock
    │   └── server
    │       ├── package.json
    │       ├── src
    │       │   ├── app.ts
    │       │   └── index.ts
    │       ├── tsconfig.json
    │       └── yarn.lock
    └── yarn.lock
文件
ecosystem.config.js
是我描述所有pm2过程的地方:

module.exports = {
  apps: [
    {
      name: "Front",
      cwd: "./packages/front",
      script: "yarn",
      args: "run dev",
      interpreter: "bash",
      instances: 1,
      max_memory_restart: "1G",
      env: {
        NODE_ENV: "development",
        REACT_APP_API_URL: "http://localhost:8080",
      },
      env_production: {
        NODE_ENV: "production",
      }
    },
    {
      name: "Server",
      cwd: "./packages/server",
      script: "yarn",
      args: "run dev",
      instances: 1,
      interpreter: "bash",
      autorestart: true,
      watch: true,
      max_memory_restart: "1G",
      env: {
        NODE_ENV: "development",
        PORT: "8080",
      },
      env_production: {
        NODE_ENV: "production",
        PORT: "8080",
      }
    }
  ]
}
这是我的
lerna.json

{
  "npmClient": "yarn",
  "packages": [
    "packages/*"
  ],
  "useWorkspaces": true,
  "version": "0.0.0"
}
Makefile
我在其中设置所有命令:

## ------------
## Setup
## ------------

install:
    yarn install
    npx lerna bootstrap

## ------------
## Dev
## ------------

start:
    npx pm2 start

stop:
    npx pm2 delete all

当我运行
makestart
(npx pm2 start)命令时,2个进程的状态显示为stopped。我不明白为什么

npx pm2 start
[PM2][WARN] Applications Front, Server not running, starting...
[PM2] App [Front] launched (1 instances)
[PM2] App [Server] launched (1 instances)
┌─────┬───────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id  │ name      │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
├─────┼───────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0   │ Front     │ default     │ 0.35.3  │ fork    │ 10947    │ 0      │ 1    │ stopped   │ 0%       │ 0b       │ max… │ disabled │
│ 1   │ Server    │ default     │ 0.35.3  │ fork    │ 10949    │ 0      │ 1    │ stopped   │ 0%       │ 0b       │ max… │ enabled  │
└─────┴───────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
这是我在运行npx pm2日志后得到的:

[TAILING] Tailing last 15 lines for [all] processes (change the value with --lines option)
/home/maximeoger/.pm2/pm2.log last 15 lines:
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] starting in -fork mode-
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] online
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] exited with code [2] via signal [SIGINT]
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] starting in -fork mode-
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] online
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] exited with code [2] via signal [SIGINT]
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] starting in -fork mode-
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] online
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] exited with code [2] via signal [SIGINT]
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] starting in -fork mode-
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] online
PM2        | 2020-11-17T16:57:42: PM2 log: App [Front:0] exited with code [2] via signal [SIGINT]
PM2        | 2020-11-17T16:57:42: PM2 log: Script /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn had too many unstable restarts (16). Stopped. "errored"
PM2        | 2020-11-17T16:57:42: PM2 log: App [Server:1] exited with code [2] via signal [SIGINT]
PM2        | 2020-11-17T16:57:42: PM2 log: Script /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn had too many unstable restarts (16). Stopped. "errored"

/home/maximeoger/.pm2/logs/Front-out-0.log last 15 lines:
/home/maximeoger/.pm2/logs/Server-out-1.log last 15 lines:
/home/maximeoger/.pm2/logs/Front-error-0.log last 15 lines:
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 3: /bin: Is a directory
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 4: /bin: Is a directory
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 5: use strict: command not found
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 3: /bin: Is a directory
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 4: /bin: Is a directory
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 5: use strict: command not found
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
0|Front    | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'

/home/maximeoger/.pm2/logs/Server-error-1.log last 15 lines:
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 3: /bin: Is a directory
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 4: /bin: Is a directory
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 5: use strict: command not found
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 3: /bin: Is a directory
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 4: /bin: Is a directory
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 5: use strict: command not found
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 7: var: command not found
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: syntax error near unexpected token `('
1|Server   | /home/maximeoger/.nvm/versions/node/v15.2.0/bin/yarn: line 8: `var majorVer = parseInt(ver.split('.')[0], 10);'
你能帮我理解这个错误吗?任何帮助都将不胜感激

谢谢

马克西姆