2016-10-11 57 views
1

我们正在使用Visual Studio Team Services来构建和部署多个站点。有些.NET,有些则不是。使用托管代理时,所有工作正常。由于托管代理的性能问题和长队列时间,我们需要使用我们自己的构建代理。 这里谈到的问题: 当运行VSTS建立运行凉亭,当我们得到一个错误:VSTS鲍尔找不到

****************************************************************************** 
Starting: bower install 
****************************************************************************** 
C:\Program Files (x86)\nodejs\npm.cmd install -g bower 
C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\bower -> C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\node_modules\bower\bin\bower 
[email protected] C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\node_modules\bower 
Not found bower: null 
****************************************************************************** 
Finishing: bower install 
****************************************************************************** 

的问题是,凉亭实际上是在该位置:

npm directory

这里是实际的凉亭建设步骤:

vsts bower build step

我们该如何解决这个Not found bower: null错误?

回答

2

安装到配置文件文件夹中的工具存在已知问题,它必须使用权限。使用-g参数从管理控制台安装该工具更容易。并确保将中央NPM版本添加到服务或系统的%path%环境变量中。

或者在npm:npm install --prefix "$(Agent.WorkFolder)" Bower的调用中添加其他参数以传入特定位置。然后在Bower任务的高级部分中指定相同的位置。

鲍尔CLI位置:$(Agent.WorkFolder)\node_modules\

(你需要检查包安装,我稍微目前猜测的准确位置;))。

+0

感谢您的回答! 我尝试使用-g参数从管理命令提示符进行安装,但仍安装到当前用户的AppData文件夹中: C:\ Program Files \ nodejs> npm install -g bower C:\ Users \ * username * \ AppData \ Roaming \ npm \ bower - > C:\ Users \ * username \ \ AppData \ Roaming \ n pm \ node_modules \ bower \ bin \ bower [email protected] C:\ Users \ * username * \ AppData \ Roaming \ npm \ node_modules \ bower –

+0

它总是让我惊讶节点是如何决定把东西放在某个地方的。你确定你是以本地管理员身份运行吗? – jessehouwing

+0

是的,100%肯定。我三重检查。 好消息是,我通过在Bower CLI位置中指定更多特定于本地bower lib: '$(Build.SourcesDirectory)\ node_modules \ bower \ bin \ bower'来获得它的工作。 现在它是吞咽失败的一步。 Gulp被发现,但是即使你的gulp依赖被安装在gulp \ node_modules node.js中,它也找不到其中的一个模块。 –