Ember.js - ember 新命令在主目录而不是当前目录中安装项目

Ember.js - ember new command installing project in home directory instead of current directory

当我 运行 使用 ember new 命令创建新项目时,该项目是在我的主目录中创建的,而不是在执行 new 命令的目录中。

有人知道为什么吗?

如果要在当前文件夹中创建新项目,必须使用ember init命令。

来自 initnew 命令 (http://www.ember-cli.com/#using-ember-cli) 的文档:

ember new <project-name> 描述:

"Creates a folder called <project-name> and generates an application structure for you."

ember init 描述:

"Generates an application structure for you in the current folder."

可以在 initnew 命令 (https://github.com/ember-cli/ember-cli/blob/18d377b264859548f41aba6c3ea2015b90978068/lib/commands/new.js and https://github.com/ember-cli/ember-cli/blob/18d377b264859548f41aba6c3ea2015b90978068/lib/commands/init.js) 的源代码中找到更好的描述:

ember new <project-name> 描述为:

"Creates a new folder and runs ember init in it."

ember init 描述是:

"Creates a new ember-cli project in the current folder."

ember new <project-name>代码的相关部分是:

return createAndStepIntoDirectory
  .run({
    directoryName: packageName,
    dryRun: commandOptions.dryRun
  })
  .then(initCommand.run.bind(initCommand, commandOptions, rawArgs))
  .then(gitInit.run.bind(gitInit, commandOptions, rawArgs));

因此 new 命令创建并进入您传递给它的项目目录名称,然后在该目录中运行 init 生成所有 ember 优点。

请注意,ember new <project-name> 命令还会为您创建一个 git 存储库(如果您已经在您的机器上设置了 git)但是 ember init命令没有。

我的根目录中有一个 package.json 文件。删除它解决了我的问题。