在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的错误

PS D:\Workshop\GitHub\cakebuildexample> ./build.ps1 -Target Default

Preparing to run build script...

Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:50 字符: 23

+ $TOOLS_DIR = Join-Path <<<< $PSScriptRoot "tools"

+ CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCom

mand

Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:51 字符: 23

+ $NUGET_EXE = Join-Path <<<< $TOOLS_DIR "nuget.exe"

+ CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCom

mand

Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:53 字符: 22

+ $CAKE_EXE = Join-Path <<<< $TOOLS_DIR "Cake/Cake.exe"

+ CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCom

mand

Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:54 字符: 29

+ $PACKAGES_CONFIG = Join-Path <<<< $TOOLS_DIR "packages.config"

+ CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCom

mand

Test-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:77 字符: 15

+ if ((Test-Path <<<< $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {

+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.TestPathCom

mand

Test-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:83 字符: 16

+ if (!(Test-Path <<<< $PACKAGES_CONFIG)) {

+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.TestPathCom

mand

Test-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:91 字符: 16

+ if (!(Test-Path <<<< $NUGET_EXE)) {

+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.TestPathCom

mand

Test-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:102 字符: 16

+ if (!(Test-Path <<<< $NUGET_EXE)) {

+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.TestPathCom

mand

Set-Location : 无法处理参数,因为参数“path”的值为空。请将参数“path”的值更改为非空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:119 字符: 17

+ Set-Location <<<< $TOOLS_DIR

+ CategoryInfo : InvalidArgument: (:) [Set-Location], PSArgumentNullException

+ FullyQualifiedErrorId : ArgumentNull,Microsoft.PowerShell.Commands.SetLocationCommand

管道元素中“&”后的表达式生成的对象无效。该表达式必须生成命令名称、脚本块或 CommandInfo 对象。

所在位置 行:1 字符: 2

+ & <<<< "" install -ExcludeVersion -OutputDirectory ""

+ CategoryInfo : InvalidOperation: (:String) [], RuntimeException

+ FullyQualifiedErrorId : BadExpression

Test-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。

所在位置 D:\Workshop\GitHub\cakebuildexample\build.ps1:133 字符: 16

+ if (!(Test-Path <<<< $CAKE_EXE)) {

+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException

+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.TestPathCom

mand

Running build script...

管道元素中“&”后的表达式生成的对象无效。该表达式必须生成命令名称、脚本块或 CommandInfo 对象。

所在位置 行:1 字符: 2

+ & <<<< "" "build.cake" -target="Default" -configuration="Release" -verbosity="Verbose"

+ CategoryInfo : InvalidOperation: (:String) [], RuntimeException

+ FullyQualifiedErrorId : BadExpression

上述报错有很多,问题的根源是PowerShell的版本问题,查了下我机器上是2.0版本的

PS D:\Workshop\GitHub\cakebuildexample> $PSVersionTable.PSVersion

Major Minor Build Revision

----- ----- ----- --------

2 0 -1 –1

解决办法就是升级(建议升级3.0 能够成功解决),Windows Management Framework 3.0 下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=34595 ,安装后就可以成功执行了。

相关文章

Windows 7上执行Cake 报错原因是Powershell 版本问题的更多相关文章

  1. windows slaver 脚本执行xcopy 报错无效驱动器规格

    jenkins上配置的windows slaver机器如下: 我用这台windows 机器作为slaver机器来编译pc的exe包,但是在最后归档包倒ftp上时报错,如下: 但是我直接在windows ...

  2. crontab执行python报错原因总结

    1.相对路径导致   2.环境变量问题,py脚本首行应指定python路径,不能用软链接   3.python3.3是默认utf-8,需要 &&脚本   最好使用crontab -e ...

  3. jenkins slave上执行脚本报错

    jenkins slave上执行脚本报错 解决方法:在系统配置中设置shell execuate C:\Windows\system32\cmd.exe 保存即可

  4. Jstorm执行task报错windows CONFIG SET protected-mode no

    windows  CONFIG SET protected-mode no报错说redis受保护模式,redis使用的是Redis-x64-3.2.100,参考博文说是redis3.2之后加入的特性, ...

  5. 在windows上 使用celery 报错

    在windows上 使用celery 报错       在windows上 使用celery 报错 ValueError: not enough values to unpack (expected ...

  6. 执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client

    1.执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client,错误如下所示: // :: ERROR SparkContext: Error init ...

  7. 数据库执行sql报错Got a packet bigger than 'max_allowed_packet' bytes及重启mysql

    准备在mysql上使用数据库A,但mysql5经过重装后,上面的数据库已丢失,只得通过之前备份的A.sql重新生成数据库A. 1.执行sql报错 在执行A.sql的过程中,出现如下错误:Got a p ...

  8. 转 sqlplus执行sql报错:ORA-01756:

    1.sqlplus执行sql报错:ORA-01756: quoted string not properly terminated   分类: 技术         在SQLPLUS中执行SQL文件时 ...

  9. memcached 笔记之windows 7 下面 安装memcached 报错

    windows 7 下面 安装memcached 报错 两种情况: 一:服务确实已经安装过 .如需要重新安装,当然是先memcached.exe -d uninstall 二:奇怪的是服务确实没有安装 ...

随机推荐

  1. 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器

    一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...

  2. iPhone Anywehre虚拟定位提示“后台服务未启动,请重新安装应用后使用”的解决方法

    问题描述: iPhone越狱了,之后在Cydia中安装Anywhere虚拟定位,但是打开app提示:后台服务未启动,请重新安装应用后使用. 程序无法正常使用... 解决方法: 打开Cydia-已安装, ...

  3. Js 原型和原型链

    Js中通过原型和原型链实现了继承 Js对象属性的访问,首先会查找自身是否拥有这个属性 如果查到,则返回属性值,如果找不到,就会遍历原型链,一层一层的查找,如果找到就会返回属性值 直到遍历完Object ...

  4. 漫谈TCP

    不得不承认,tcp是一个非常复杂的协议.它包含了RFC793及之后的一些协议.能把tcp的所有方面面面具到地说清楚,本身就是个很复杂的事情.如果再讲得枯燥,那么就会更让人昏昏欲睡了.本文希望能尽量用稍 ...

  5. nodejs操作arduino入门(javascript操作底层硬件)

    用Javascript来操作硬件早就不是一件稀奇的事情了. 所以作为一名电子专业出身的FE,我也打算尝试一下用js来驱动arduino: 要想操作这些底层硬件,肯定是需要一些工具的,我这里介绍的工具主 ...

  6. Android SDK 在线更新镜像服务器资源

    本文转自:http://blog.kuoruan.com/24.html.感谢原作者. 什么是Android SDK SDK:(software development kit)软件开发工具包.被软件 ...

  7. js刷新页面方法大全

    如何实现刷新当前页面呢?借助js你将无所不能. 1,reload 方法,该方法强迫浏览器刷新当前页面.语法:location.reload([bForceGet])   参数: bForceGet, ...

  8. Oozie分布式任务的工作流——Spark篇

    Spark是现在应用最广泛的分布式计算框架,oozie支持在它的调度中执行spark.在我的日常工作中,一部分工作就是基于oozie维护好每天的spark离线任务,合理的设计工作流并分配适合的参数对于 ...

  9. keepalived从机接管后主机恢复不抢占VIP

    在lvs+keepalived环境中,为了减小keepalived主从切换带来的意外风险,,设置主机恢复后不抢占VIP.待进行vrrp协议通告备机不可用时切换.主要修改两个地方.(红色部分) 只需修改 ...

  10. 12个小技巧,让你高效使用Eclipse

    集成开发环境(IDE)让应用开发更加容易.它们强调语法,让你知道是否你存在编译错误,在众多的其他事情中允许你单步调试代码.像所有的IDE一 样,Eclipse也有快捷键和小工具,这些会让您感觉轻松许多 ...