node.js - TFS 2017本地无法在cmd中找到 Node 模块

标签 node.js tfs aurelia

如何在作为服务运行的 tfs 代理中运行 npm 模块?

这是我的设置。

我在本地计算机上设置代理,并在本地运行 TFS 2017。 我尝试在作为服务运行的代理上构建 aurelia 应用程序。 我已经在运行代理的机器上安装了 node、aurelia cli 和 npm。使用命令 au build(aurelia cli build)手动运行 cmd 来全局访问它。但是,当我创建运行 au(工具)和 build(参数)的命令行构建步骤时,代理找不到 au。

我认为它也找不到其他 npm 模块。

最佳答案

一般情况下,构建代理(作为服务运行)使用 Network Service 帐户,并且安装的 npm 包位于当前用户文件夹中,因此您可以直接调用 au 命令,但在构建过程中无法调用 au 命令。

您可以更改构建代理服务帐户以使用您的帐户,或者如果您仍然使用网络服务帐户,请引用以下步骤安装 Aurelia-cli 软件包并在命令行步骤中调用 au 命令:

  1. 添加命令行步骤来构建定义(工具:npm;参数:install Aurelia-cli -g)
  2. 添加命令行步骤(工具:C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\au;参数:build;工作文件夹:[项目文件夹](例如 $(Build.SourcesDirectory))

注意:步骤 1 只需运行一次,您可以在下次构建时禁用或删除它以节省时间。

另外,您可以尝试将 C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm 添加到环境变量(系统变量 > Path)中,然后直接使用 au。

关于node.js - TFS 2017本地无法在cmd中找到 Node 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43182751/

相关文章:

node.js coffeescript - 需要模块的问题

tfs - 在不安装 Visual Studio 的情况下,我可以使用 Team Explorer 或 TFS 电动工具通过 Windows 资源管理器 checkin / checkout 文件吗?

windows - Aurelia:如何获取用户窗口的用户名

javascript - Protractor 中的过滤器函数的 promise 是如何得到解决的?

node.js - 如何从文档数组 where <condition> 中删除子文档?

javascript - 从 Node js 中的对象获取值

c# - 检查文件是否已在源代码管理中

command-line - 合并 TFS 2008 中的单个更改

aurelia - 如何动态添加和删除自定义元素或通过 aurelia 中的单击事件添加和删除自定义元素

typescript - Aurelia 应用程序中的不活动注销