0
  • I have a NX monorepo
  • I created a new CLI node.js app called nodeapp1 app using command:
    • nx g @nrwl/node:application nodeapp1
  • When running nx serve nodeapp1 -or- nx build nodeapp1, it does generate a package.json file: dist/apps/nodeapp1/package.json, but it does not include a dependencies section at all.
  • This seems to be a problem for NX apps using esbuild, but not webpack.

dist/apps/nodeapp1/package.json:

Here is the entire package.json file that it generates:

{
  "name": "nodeapp1",
  "version": "0.0.1",
  "main": "./main.js"
}

Here's the content of some other relevant files:

apps/nodeapp1/src/main.ts:

import * as figlet from 'figlet';
console.log(figlet.textSync('figlet', 'ANSI Shadow'));

apps/nodeapp1/project.json (all defaults, I haven't changed anything):

{
    "name": "nodeapp1",
    "$schema": "../../node_modules/nx/schemas/project-schema.json",
    "sourceRoot": "apps/nodeapp1/src",
    "projectType": "application",
    "targets": {
        "build": {
            "executor": "@nrwl/esbuild:esbuild",
            "outputs": ["{options.outputPath}"],
            "defaultConfiguration": "production",
            "options": {
                "platform": "node",
                "outputPath": "dist/apps/nodeapp1",
                "format": ["cjs"],
                "bundle": false,
                "main": "apps/nodeapp1/src/main.ts",
                "tsConfig": "apps/nodeapp1/tsconfig.app.json",
                "assets": ["apps/nodeapp1/src/assets"],
                "generatePackageJson": true,
                "esbuildOptions": {
                    "sourcemap": true,
                    "outExtension": {
                        ".js": ".js"
                    }
                }
            },
            "configurations": {
                "development": {},
                "production": {
                    "esbuildOptions": {
                        "sourcemap": false,
                        "outExtension": {
                            ".js": ".js"
                        }
                    }
                }
            }
        },
        "serve": {
            "executor": "@nrwl/js:node",
            "defaultConfiguration": "development",
            "options": {
                "buildTarget": "nodeapp1:build"
            },
            "configurations": {
                "development": {
                    "buildTarget": "nodeapp1:build:development"
                },
                "production": {
                    "buildTarget": "nodeapp1:build:production"
                }
            }
        },
        "lint": {
            "executor": "@nrwl/linter:eslint",
            "outputs": ["{options.outputFile}"],
            "options": {
                "lintFilePatterns": ["apps/nodeapp1/**/*.ts"]
            }
        },
        "test": {
            "executor": "@nrwl/jest:jest",
            "outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
            "options": {
                "jestConfig": "apps/nodeapp1/jest.config.ts",
                "passWithNoTests": true
            },
            "configurations": {
                "ci": {
                    "ci": true,
                    "codeCoverage": true
                }
            }
        }
    },
    "tags": []
}

Stuff I've tried:

I've tried adding this to nx.json:

"pluginsConfig": {
    "@nrwl/js": {
        "analyzeSourceFiles": true
    }
}

I've also seen settings like updateBuildableProjectDepsInPackageJson and buildableProjectDepsInPackageJsonType mentioned, and tried putting them in project.json... although maybe they're not relevant, as they seem to be specific to Angular app?

Question:

  • Is there something I need to do for it to include a dependencies section? I've been scouring the web, and I can't find anything that helps.
  • There's plenty of other issues here on stackoverflow, and github issues etc where people are having a different problem of some dependencies being includes, but some missing.
  • Whereas my issue is that the dependencies section doesn't exist at all.

Edit:

 Maximum call stack size exceeded

 >  NX   Maximum call stack size exceeded


    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:7:19)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:29:13)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:29:13)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:29:13)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:29:13)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:29:13)
    at recur (node_modules\@nrwl\esbuild\src\executors\esbuild\lib\get-extra-dependencies.js:7:19)
LaVache
  • 2,372
  • 3
  • 24
  • 38

0 Answers0