constructor(opts: {
    +fileCandidates: FileCandidates,
    +indexCandidates: FileCandidates,
    +mainModulePath: string,
    +packageJsonPath: string,
  }) {
    super(
      `The package \`${opts.packageJsonPath}\` is invalid because it ` +
        'specifies a `main` module field that could not be resolved (' +
        `\`${opts.mainModulePath}\`. None of these files exist:\n\n` +
        `  * ${formatFileCandidates(opts.fileCandidates)}\n` +
        `  * ${formatFileCandidates(opts.indexCandidates)}`,
    );
    // $FlowFixMe[unsafe-object-assign]
    Object.assign(this, opts);
  }
Full path the package we were trying to resolve.
Ex. `/js/foo/package.json`.