1

syntax error, 'unexpected ','Ruby プログラムで を取得しています。Ruby インタープリターと Ruby IDE (Eclipse DLTK) の両方が同じ場所でエラーを示していますが、私にはまったく問題ないように見えます。

main.rb:156: syntax error, unexpected ','

    def create_account(atts={}, entity, server_app)
                                      ^ (SyntaxError)

問題のある行 (および残りのメソッド) をコメントアウトまたは削除すると、構文エラーは次の 3 パラメーター メソッド定義に移動します (パラメーターなし、1 または 2 パラメーター メソッドは影響を受けません)。

私はJruby 1.6.7を実行しています

これはまったく関係のないことと関係があると思うので、何を探すべきかについてのヒント/ヒューリスティックを探しています。

- - 編集 - -

さらに実験すると、ハッシュのインライン初期化の使用に関連していることがわかります。

def dummy_two_param_method(dummy={})        #OK
end

def dummy_two_param_method(dummy, damn)     #OK
end

def dummy_two_param_method(dummy={}, damn)  #Syntax error at ')'
end

def dummy_three_param_method(dummy={}, damn, dum_b)
end
4

1 に答える 1

6

Ruby 1.8 でデフォルト値を使用する場合 (jruby 1.6.7 は 1.9 に完全に準拠しているわけではありません)、デフォルト値はメソッド行の最後で宣言する必要があります。

試すcreate_account(entity, server_app, atts={})

于 2013-05-31T17:09:21.413 に答える