devDependencies в приложении js узла в модуле приложения Flex - PullRequest
0 голосов
/ 08 октября 2018

в стандартной среде в GAE остается, что devDevependencies из package.json игнорируются .Но для гибкой среды 1004 * таких ограничений нет.Тем не менее, я получаю сообщение об ошибке «Посылка не найдена» при попытке развернуть приложение в GAE.Вот мой app.yaml:

runtime: nodejs
env: flex

И мой package.json:

{
  "main": "index.js",
  "scripts": {
    "dev": "nodemon -w ./server bin/runServer -e js,json",
    "build:client": "parcel build client/index.html",
    "start": "npm run build:client && cross-env NODE_ENV=production node ./bin/runServer"
  },
  "dependencies": {
    "@material-ui/core": "^3.1.2",
    "@material-ui/icons": "^3.0.1",
    "classnames": "^2.2.6",
    "express": "^4.16.3",
    "lodash": "^4.17.11",
    "material-ui": "^0.20.2",
    "morgan": "^1.9.1",
    "react": "^16.5.2",
    "react-dom": "^16.5.2",
    "react-loadable": "^5.5.0",
    "react-multi-lang": "^1.0.2",
    "react-router": "^4.3.1",
    "react-router-dom": "^4.3.1",
    "whatwg-fetch": "^3.0.0"
  },
  "devDependencies": {
    "@babel/core": "^7.1.2",
    "@babel/plugin-proposal-class-properties": "^7.1.0",
    "@babel/plugin-proposal-object-rest-spread": "^7.0.0",
    "@babel/plugin-syntax-dynamic-import": "^7.0.0",
    "@babel/preset-env": "^7.1.0",
    "@babel/preset-react": "^7.0.0",
    "@babel/register": "^7.0.0",
    "cross-env": "^5.2.0",
    "nodemon": "^1.18.4",
    "parcel": "^1.10.1",
    "parcel-bundler": "^1.10.1"
  }
}

1 Ответ

0 голосов
/ 01 февраля 2019

В последний раз, когда я проверял, App Engine не устанавливает devDependencies, потому что он по умолчанию использовал npm install --production.Если вы хотите убедиться, что они установлены, у вас есть несколько вариантов:

  1. Вы можете переместить все в dependencies раздел
  2. Вы можете определить свой собственный Dockerfile,и запустить обычный npm install внутри него перед запуском
  3. (вероятно, лучший). Вы можете использовать Многоэтапную сборку Docker , чтобы выполнить ваш шаг сборки на первом этапе и сгенерироватьотличается более тонким изображением, в котором есть только то, что вам нужно.

Надеюсь, это поможет!

...