/opt/watcher/app-types/node/start.sh: line 49: null: command not found Error

I am working a bot. I have /opt/watcher/app-types/node/start.sh: line 49: null: command not found error.

My package.json file is:

{
  "name": "StarBot Commando",
  "version": "0.28.0",
  "description": ".",
  "author": {
  "name": "StarBot Commando",
  "email": "tarikcoskun8206@gmail.com",
  "scripts": { "start": "node server.js" },
    
  "contributors": [],
  "license": "MIT",
  "lint": "eslint ."
  },
  "repository": {
    "type": "git",
    "url": ""
  },
  "bugs": {
    "url": ""
  },
  "keywords": [
    "discord",
    "bot"
  ],
  "homepage": "https://github.com/WeebDev/Commando#readme",
  "dependencies": {
    "Sherlock": "neilgupta/Sherlock",
    "canvas": "next",
    "cheerio": "^0.22.0",
    "commando-provider-mongo": "^1.1.1",
    "discord-bots-api": "0.0.2",
    "discord.js": "hydrabolt/discord.js",
    "discord.js-commando": "gawdl3y/discord.js-commando",
    "erlpack": "hammerandchisel/erlpack",
    "ffmpeg": "0.0.4",
    "figlet": "^1.2.1",
    "jimp": "^0.5.6",
    "long": "^4.0.0",
    "moment": "^2.0.0",
    "moment-duration-format": "^1.0.0",
    "mongodb": "^3.1.9",
    "node-opus": "^0.2.0",
    "node-superfetch": "^0.1.9",
    "pg": "^6.0.0",
    "pg-hstore": "^2.0.0",
    "prism-media": "hydrabolt/prism-media",
    "random-js": "^1.0.0",
    "redis": "^2.0.0",
    "request": "^2.0.0",
    "request-promise": "^4.0.0",
    "sequelize": "^4.0.0",
    "simple-youtube-api": "^3.0.1",
    "snekfetch": "^3.0.0",
    "sqlite": "^3.0.0",
    "tsubaki": "^1.0.0",
    "uws": "^8.0.0",
    "weather-js": "^2.0.0",
    "winston": "^2.4.4",
    "ytdl-core": "^0.17.1"
  },
  "devDependencies": {
    "eslint": "^4.0.0",
    "eslint-config-aqua": "^2.0.0"
  },
  "eslintConfig": {
    "extends": "aqua",
    "rules": {
      "no-process-env": "off"
    }
  },
  "engines": { "node": "8" }
  }

Who can help me?


MOD EDIT: code formatting

Hey @Taro8206, welcome to Glitch!

Looking at what I believe is the project you’re working on, when it tries to perform it’s npm install step it’s unable to find the discord.js repo you’re attempting to use. In the logs I see:

ERROR 404 Not Found: https://codeload.github.com/hydrabolt/discord.js/tar.gz/d92ee2ff999954899c891c093f5f107dd686b64f

and if I check that url from the console using curl I see this

curl -IL https://codeload.github.com/hydrabolt/discord.js/tar.gz/d92ee2ff999954899c891c093f5f107dd686b64f
HTTP/1.1 404 Not Found
Content-Length: 15
Access-Control-Allow-Origin: https://render.githubusercontent.com
Content-Security-Policy: default-src 'none'; style-src 'unsafe-inline'; sandbox
Strict-Transport-Security: max-age=31536000
Vary: Authorization,Accept-Encoding
X-Content-Type-Options: nosniff
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
Date: Sun, 18 Nov 2018 05:11:12 GMT
X-GitHub-Request-Id: D476:2CE2:8FC7:19D05:5BF0F46F 

And in your server.js file (called by your start script) you’re trying to require() discord.js, which probably isn’t installed due to the preceding error. The first thing I’d try to do is to resolve that.

Another issue is that you’re defining your scripts section twice in package.json. Try to remove the one you added, and insert the start script in the section that already existed, a few lines below the one you defined.

Thanks for feedback. But I don’t understand :frowning: I am Turk, and my English is bad :slight_smile:

1 Like

I can’t find (https://codeload.github.com/hydrabolt/discord.js/tar.gz/d92ee2ff999954899c891c093f5f107dd686b64f) link

It looks to me like Emanuele may have seen a temporary version of your package.json file that had a scripts section defined twice; the current version looks fine as far as that is concerned.

Before we can dig further into whatever else might be wrong we need to get your discord.js dependency working. It’s not right now because the way you’ve specified it pnpm is looking at the hydrabolt github user for a repo called discord.js the same way that it looks up “Sherlock”: “neilgupta/Sherlock” and finds https://github.com/neilgupta/Sherlock (line 27 of package.json). There is no “hydrabolt” GitHub user, so pnpm can’t find the package you want to import and errors out with ERROR 404 Not Found: https://codeload.github.com/hydrabolt/discord.js/tar.gz/d92ee2ff999954899c891c093f5f107dd686b64f. So let’s clear that up first.

Is there something in particular you’re looking for that you can’t just use the standard discord.js npm package? If not I think you should try replacing the discord.js dependency with a standard npm reference like "discord.js": "^11.4.0" and see what happens.

I’m sorry to keep you waiting. But I couldn’t find this link anywhere :confused:

I’m not sure which link you mean here.

However I see that the package.json file for the project I think you’re working on is still not correct - you can validate it using the tool at http://package-json-validator.com/ and the documentation for package.json is here, but the biggest issues are probably in the author node:

  "author": {
    ...
    "discord.js": "^11.4.0",
    "scripts": {
      "start": "node index.js"
    },
    "contributors": [],
    ...
  },

The “scripts” node should be after the author node, not inside it. The “discord.js” part probably is meant to be in the “dependencies” area, but you’ve already got that in there so that can probably just be deleted.