有没有办法告诉npm从命令行使用的文件不是" package.json"?
编辑:
感谢您的回答。我已经检查了文档,并希望有一种解决方法或无法记录的方法来实现这一点。我会想到别的东西。
答案 0 :(得分:3)
仅使用客户端空间工具,您似乎非常直截了当。 npm doc对此持肯定态度:
A package is:
a) a folder containing a program described by a package.json file
b) a gzipped tarball containing (a)
c) a url thatresolves to (b)
d) a <name>@<version> that is published on theregistry with (c)
e) a <name>@<tag> that points to (d)
f) a <name>that has a "latest" tag satisfying (e)
g) a git url that, when cloned,results in (a).
[...]
您需要在项目的根目录中有一个package.json文件 npm的大部分内容。这基本上就是整个界面。
正如您所看到的,他们非常清楚地表明任何工作都需要package.json
。
您必须深入研究代码,以获得无法重复使用的结果。如果它是您想要的,请在您的问题中明确说明其他人理解为什么有必要。
答案 1 :(得分:2)
不。如the npm-install
docs中所述,这是您可以使用的唯一语法:
npm install (with no args in a package dir)
npm install <tarball file>
npm install <tarball url>
npm install <folder>
npm install [@<scope>/]<name> [--save|--save-dev|--save-optional] [--save-exact]
npm install [@<scope>/]<name>@<tag>
npm install [@<scope>/]<name>@<version>
npm install [@<scope>/]<name>@<version range>
npm i (with any of the previous argument usage)
如果没有args,该命令将安装a folder containing a program described by a package.json file
。
答案 2 :(得分:0)
我最终得到了包含在$ PATH中的以下bash脚本
...
$escaped_command = escapeshellarg("./randomScript.sh arg1 arg2 arg3");
system($escaped_command);
...