【问题标题】:Why is Visual Studio looking for my gulpfile in the wrong folder?为什么 Visual Studio 在错误的文件夹中查找我的 gulpfile?
【发布时间】:2016-12-13 17:50:04
【问题描述】:

背景故事

我一直在尝试在 Visual Studio 中建立一个项目,它使用 GulpJS 来编译 Sass。有人告诉我 VS 应该自动识别项目中的 package.json 并运行 npm install,但我必须通过命令行手动完成。即便如此,当我打开 Task Runner Explorer 时,它说有 (No tasks found)。我和我的同事查找了对其他人有用的解决方案,其中许多报告在重新启动 VS、清除一些缓存数据或重新安装节点模块后成功;但是这些都不适合我。以下是我尝试过的一些解决方案:


问题

经过一番挖掘,我遇到了包管理器控制台,并决定也许我可以通过它运行 gulp,而不是打开单独的 CMD 窗口。但是,当我这样做时,我得到了以下信息:

[11:27:43] Local gulp not found in C:\
[11:27:43] Try running: npm install gulp

我的直接想法是我可能需要重新安装依赖项,所以我运行npm install 并得到以下输出:

npm : npm WARN enoent ENOENT: no such file or directory, open 'C:\package.json'
At line:1 char:1
+ npm install
+ ~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (npm WARN enoent...:\package.json':String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

npm WARN !invalid#1 No description
npm WARN !invalid#1 No repository field.
npm WARN !invalid#1 No README data

npm

WARN
 !invalid#1 No license field.

这时我注意到它正在寻找C:\package.json 而不是我的项目目录中的那个。但是,当我运行ls 时,它清楚地表明它位于解决方案根目录内,位于C:\Dev\solution-name。我尝试使用cd Presentation\Nop.Web 导航到特定项目,但我仍然得到它在C:\ 根目录中查找的结果。谁能解释为什么会发生这种情况以及我该如何解决?

【问题讨论】:

    标签: asp.net visual-studio-2015 gulp nopcommerce


    【解决方案1】:

    我终于想通了(再过一天,我会为这个问题提供赏金),这不是 VS 的问题。当我第一次开始使用这台特定的计算机并且仍在使用 Windows 的默认命令提示符时,我不喜欢它默认从 %USERPROFILE% 开始。因此,我寻找一种更改默认值的方法,并偶然发现了一个注册表“hack”,它基本上在cmd.exe 启动时运行cd C:/。然而,事实证明这会导致其他命令行工具,包括 Powershell 和 VS 的包管理器运行该命令。

    如果其他人遇到此问题(由于这种情况的性质,我怀疑有人遇到过),您可以尝试按照以下步骤操作:

    1. 打开注册表编辑器。我使用 Windows 运行工具 (Win + R) 并输入 regedit
    2. 导航到HKEY_CURRENT_USER > SOFTWARE > Microsoft > Command Processor
    3. 删除AutoRun(或将其值更改为不会干扰您的工作流程的值)。

    更多信息here

    Original Registry Tutorial(请注意,如果我向下滚动一点,我可能会避免这种情况。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-18
      • 1970-01-01
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 2021-04-23
      • 2015-07-10
      相关资源
      最近更新 更多