conradjohnathan17 / snova

Automatically exported from code.google.com/p/snova
0 stars 0 forks source link

CloudFoundry部署无法建立app,求解决 #216

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
D:\*****>vmc push j*****l
NoMethodError: undefined method `[]' for nil:NilClass
For more information, see ~/.vmc/crash

.vmc/crash信息如下:

Time of crash:
  2012-12-02 17:56:18 +0800

NoMethodError: undefined method `[]' for nil:NilClass

manifests-vmc-plugin-0.4.14/lib/manifests-vmc-plugin.rb:76:in `app_by_tag'
manifests-vmc-plugin-0.4.14/lib/manifests-vmc-plugin.rb:81:in `find_apps'
manifests-vmc-plugin-0.4.14/lib/manifests-vmc-plugin/plugin.rb:96:in `block in 
<class:Manifests>'
mothership-0.3.0/lib/mothership/command.rb:78:in `instance_exec'
mothership-0.3.0/lib/mothership/command.rb:78:in `block (2 levels) in invoke'
mothership-0.3.0/lib/mothership/command.rb:82:in `instance_exec'
mothership-0.3.0/lib/mothership/command.rb:82:in `invoke'
mothership-0.3.0/lib/mothership/base.rb:50:in `execute'
vmc-0.4.2/lib/vmc/cli.rb:106:in `execute'
mothership-0.3.0/lib/mothership.rb:42:in `start'
vmc-0.4.2/bin/vmc:11:in `<top (required)>'
C:/Ruby192/bin/vmc:19:in `load'
C:/Ruby192/bin/vmc:19:in `<main>'

求解决问题,谢谢!!

Original issue reported on code.google.com by Jmak810...@gmail.com on 2 Dec 2012 at 10:04

GoogleCodeExporter commented 9 years ago
"vmc-0.4.2/lib/vmc/cli.rb:106:in `execute'
mothership-0.3.0/lib/mothership.rb:42:in `start'
vmc-0.4.2/bin/vmc:11:in `<top (required)>'"
看起来像是vmc-0.4.2在Win 7-64bit(是我的OS)上出现的问题

$ vmc -v
vmc 0.4.2
确定是vmc-0.4.2

我之前一直使用的是vmc-0.3.21,没有任何问题。刚刚无意间看�
��此Issue,感觉蛮奇怪的。
于是随手看了下,自己使用的版本,一看还是0.3.*的,手快了
一下,gem update 
vmc,就更新了的vmc到0.4.2,但接着想试试部署一个App,vmc push 
[AppName],结果出现一样的问题"NoMethodError: undefined method `[]' 
for 
nil:NilClass"。基本上确定是vmc-0.4.2的问题,但是奇怪的是vmc的i
ssue track( https://cloudfoundry.atlassian.net/secure/Dashboard.jspa) 
目前尚无类似Issue。今晚是没有时间到vmc issue 
track去反馈问题了的。

给你个简单的解决方法吧。
$gem uninstall -a vmc
卸掉各种版本的vmc,可能会遇到两个交互,直接点击确定就��
�。
$gem install -v 0.3.21 vmc
安装稍微老点版本使用。没有任何问题的。

粗略看下0.4.* 和 
0.3.*相比,操作上没什么变化,help指令更明了点。

Original comment by goknmuse on 2 Dec 2012 at 1:25

GoogleCodeExporter commented 9 years ago
"直接点击确定就好" lol
直接点击回车键哈。

Original comment by goknmuse on 2 Dec 2012 at 1:29

GoogleCodeExporter commented 9 years ago
谢谢解答,根据你提供的解决方法,已经解决问题,再次感��
�:)

Original comment by Jmak810...@gmail.com on 2 Dec 2012 at 4:20

GoogleCodeExporter commented 9 years ago
https://github.com/cloudfoundry/vmc#cli-for-cloud-foundry-ng-or-next-generation-
or-v2

从其官方介绍来看,vmc 准备发布v2/ng的( 
应该是将vmc-0.4.*归为v2的 )。但我按照开发者的博客( 
http://www.iamjambay.com/2012/10/cloud-foundry-vmc-ng-has-helpful-client.html 
)介绍配置使用vmc-ng,仍有问题的。有些新增功能 
可以使用,但vmc push仍有问题的。而且从其Issue track 
https://cloudfoundry.atlassian.net/browse/CF-186 , 可以看出,Matt Reider 
让我们耐心等待下嘛!

So, 目前来看使用vmc-0.4.* 之前的版本是没有任何问题的。
$ gem install -v "< 0.4" vmc
安装vmc-0.4.*之前的版本。

$ vmc -v
vmc 0.3.23
可以看出vmc-0.3.23是0.3的最新版本了的。

$ vmc list vmc
查看已安装的vmc版本

$ vmc _0.3.23_ push [AppName]
举个例子,如果你已经安装vmc-0.4.* 和 
vmc-0.3.23,此命令强制使用vmc-0.3.23,就不会出现vmc-0.4.* 
push的问题了的。同时,可以使用一点vmc-0.4.* 
的一点点新的特性的。例如: $ vmc target api.cloudfoundry.com 
默认Target的就是https://api.cloudfoundry.com。vmc-0.4.* 的client.log 
更加整洁了的。

$ vmc uninstall -v 0.4.2 vmc
实在不喜欢这种ng_beta的折腾版,卸掉嘛,只用vmc-0.3.*。

Original comment by goknmuse on 3 Dec 2012 at 3:21

GoogleCodeExporter commented 9 years ago
找到问题的真正原因。

http://docs.cloudfoundry.com/tools/vmc/installing-vmc.html#prerequisite-installi
ng-ruby-and-rubygems

>The following versions of Ruby are currently supported:
>
>   1.8.7
>   1.9.2

vmc >= 0.4 仅部分支持Ruby193。 vmc < 0.4 
使用Ruby193,我是没遇到什么问题的。
因此,要想完全使用vmc >= 0.4,就安装 Ruby192(推荐) 或 
Ruby187。
要是已安装Ruby193,且只是vmc push 
部署个App,用按照前面的回复操作使用vmc-0.3.*,也没啥。

Original comment by goknmuse on 13 Feb 2013 at 2:56