NPM 不会自动为我设置 cmdlet?

NPM won't automatically set up cmdlet's for me?

这是我第一次遇到这种情况。

我正在尝试安装文档生成器 (docma),出于某种原因,我遵循他们在文档中所说的一切,但无法执行 'docma' 或 'docma serve',它说它不能被识别为一个 cmdlet,在我的 Linux 机器上试过,它也不能被识别为命令,所以我无法提供我的文档,开发人员几年前就停止支持了。

提前致谢

编辑:我应该补充一点,我没有 node_modules 文件夹

如果您的项目没有 package.json 文件,请创建一个:

npm init

(如果您不关心 package.json 文件的内容是什么,那么您可以使用 npm init -y 接受所有默认值,而不是回答命令会问您的问题。 )

文档说要在这样的项目中安装 docma

npm i docma -D

这样做。这将创建一个 node_modules 目录(如果您还没有)。

从那里开始,docma 文档中的所有命令都可以从命令行执行,如果您在它们前面加上 npx。所以在它说 docma 的地方,你可以使用 npx docma。在显示 docma serve 的地方,您可以使用 npx docma serve。 (你需要在你的项目目录中才能工作!)

另一种解决方案是全局安装 docma (npm i docma -g),但这有其自身的风险和复杂性(例如在某些情况下需要更高的权限)。我上面描述的是(IMO)更安全更好。