Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby fastlane脚本中的参数数量错误(给定0,应为1)(ArgumentError)_Ruby_Fastlane - Fatal编程技术网

Ruby fastlane脚本中的参数数量错误(给定0,应为1)(ArgumentError)

Ruby fastlane脚本中的参数数量错误(给定0,应为1)(ArgumentError),ruby,fastlane,Ruby,Fastlane,我确实在脚本中添加了方法: #这是所需的最低版本号。 #如果使用较新版本的功能,请更新此 fastlane_版本“2.28.2” 默认平台:ios 平台:ios-do #一些代码是从fastlane/app\u store\u build\u number复制的 def获取上次应用程序版本(应用程序标识符) 太空船::Tunes.login('some-user@icloud.com') 宇宙飞船::Tunes.select_团队 app=Spaceship::Tunes::Applicatio

我确实在脚本中添加了方法:

#这是所需的最低版本号。
#如果使用较新版本的功能,请更新此
fastlane_版本“2.28.2”
默认平台:ios
平台:ios-do
#一些代码是从fastlane/app\u store\u build\u number复制的
def获取上次应用程序版本(应用程序标识符)
太空船::Tunes.login('some-user@icloud.com')
宇宙飞船::Tunes.select_团队
app=Spaceship::Tunes::Application.find(app\u标识符)
列车号=应用程序。所有列车号(站台:站台)
自订版本(列车号)。最后
结束
def自订单_版本(版本)
versions.map(&:to_s).sort_by{v|Gem::Version.new(v)}
结束
# ....
结束
在我的快车道行动中称之为:

lane:get\u ver do
获取证书(
用户名:'一些-user@icloud.com',
团队名称:“我们的团队名称”
)
app\u version=get\u last\u app\u version('com.some app.ios'))
#进一步行动
结束
当我运行
get\u ver
操作时,我得到了错误的
参数数(给定0,预期为1)
,并且无法理解出了什么问题

用一个参数定义的方法,调用也有一个参数,原因是什么

我还尝试添加参数名称:

get_last_app_version(app_标识符:“com.some app.ios”)
移除支架:

get_last_app_version'com.some app.ios'
但结果是一样的

完整错误输出:

Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/fast_file.rb:112:in `platform': [!] wrong number of arguments (given 0, expected 1) (ArgumentError) from Fastfile:22:in `get_last_app_version' from Fastfile:58:in `block (2 levels) in parsing_binding' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/lane.rb:33:in `call' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:45:in `chdir' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:45:in `execute' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/lane_manager.rb:56:in `cruise_lane' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/command_line_handler.rb:36:in `handle' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:108:in `block (2 levels) in run' from /Library/Ruby/Gems/2.3.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in `call' from /Library/Ruby/Gems/2.3.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in `run' from /Library/Ruby/Gems/2.3.0/gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in `run_active_command' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:74:in `run!' from /Library/Ruby/Gems/2.3.0/gems/commander-fastlane-4.4.6/lib/commander/delegates.rb:15:in `run!' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:333:in `run' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:41:in `start' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/fastlane/lib/fastlane/cli_tools_distributor.rb:108:in `take_off' from /Library/Ruby/Gems/2.3.0/gems/fastlane-2.99.0/bin/fastlane:20:in `' from /usr/local/bin/fastlane:22:in `load' from /usr/local/bin/fastlane:22:in `' Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/fast_file.rb:112:在'platform'中:[!]参数数目错误(给定0,应为1)(ArgumentError) 来自Fastfile:22:“获取最后一个应用程序版本”中的 来自Fastfile:58:in `解析_绑定中的块(2级)' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/lane.rb:33:in'call' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:49:in'block in execute' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:45:in'chdir' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/runner.rb:45:in'execute' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/lane\u manager.rb:56:in'cruise\u lane' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/command_-line_-handler.rb:36:in'handle' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:108:“运行中的块(2个级别)”中 from/Library/Ruby/Gems/2.3.0/Gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in'call' from/Library/Ruby/Gems/2.3.0/Gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in'run' from/Library/Ruby/Gems/2.3.0/Gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in'run\u active\u command' 来自/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane\u core/lib/fastlane\u core/ui/fastlane\u runner.rb:74:in'run!' 从/Library/Ruby/Gems/2.3.0/Gems/commander-fastlane-4.4.6/lib/commander/delegates.rb:15:in'run!' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:333:in'run' from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/commands_generator.rb:41:in'start' 来自/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/fastlane/lib/fastlane/cli\u tools\u distributor.rb:108:in“起飞” from/Library/Ruby/Gems/2.3.0/Gems/fastlane-2.99.0/bin/fastlane:20:in`' from/usr/local/bin/fastlane:22:in'load' from/usr/local/bin/fastlane:22:in`'
您的错误消息说您应该将参数传递给
platform
method调用,这发生在此行:

train_numbers = app.all_build_train_numbers(platform: platform)

您的错误消息说您应该将参数传递给
platform
method调用,这发生在此行:

train_numbers = app.all_build_train_numbers(platform: platform)

我更新了有问题的代码-现在您可以看到
platform
已定义。它包含在默认的
fastlane
脚本中,我没有更改它。此外,错误消息不包含任何关于
所有列车号的信息。。。奇怪的是,当我直接设置
platform
值(
app.all\u build\u train\u number(platform::ios)
)时,脚本开始工作。谢谢,我将进一步学习fastlane。它不是“定义”的,而是用
:ios
参数调用的。这并不意味着您可以使用
platform
调用来引用它的“值”(无论它是什么)。我更新了有问题的代码-现在您可以看到
platform
已定义。它包含在默认的
fastlane
脚本中,我没有更改它。此外,错误消息不包含任何关于
所有列车号的信息。。。奇怪的是,当我直接设置
platform
值(
app.all\u build\u train\u number(platform::ios)
)时,脚本开始工作。谢谢,我将进一步学习fastlane。它不是“定义”的,而是用
:ios
参数调用的。这并不意味着您可以使用
platform
call来引用它的“值”(不管它是什么)。