2012-04-14 8 views
0

"-Dmyparamname = val1、val2、val3"という形式のコマンドライン引数を持つフィールドに@Paramアノテーションを使用しようとしていますが、機能しません。私はcaliper-0.5-rc1.jarを使用しています。Caliper @Param not working

java -classpath "mylongclasspath" MyBenchmarkClass -Jjit=-client,-server -Dprovider=CGLIB,JAVASSIST,JAVAPROXY 

マイベンチマーククラスには、次があります:私の実際の使用量は次のようになります

public class MyBenchmarkClass extends SimpleBenchmark { 
    @Param 
    private String provider; 

    ... 
} 

をしかし、私は私だけではなく-Dproviderため、JITのためのオプションを取得しています実行すると:

0% Scenario{vm=java, trial=0, benchmark=M1, jit=-server} 30.40 ns; ?=0.13 ns @ 3 trials 
17% Scenario{vm=java, trial=0, benchmark=M2, jit=-server} 31.42 ns; ?=0.08 ns @ 3 

など、最終的に私はSに期待しているだろう "JIT = -client"

とすべてのベンチマークを繰り返しますEE:

0% Scenario{vm=java, trial=0, benchmark=M1, jit=-server provider=CGLIB} ...etc. 

私はオプションのすべての種類を試してみました:コマンドの引数の値の前後に引用符、内部List型の静的フィールドとしてそれらを提供する、などを含むことがしようとしているという兆候は決してありません提供された「プロバイダ」の値を反復処理します。

私が間違っていることに関する考えはありますか?

答えて

0

0.5-rc1ビルド(Maven Centralの唯一のもの)のように見えますが、問題です。私は別のプロジェクトから1.0の予備ビルドを拝借しました(私はプロジェクト全体とMavenをダウンロードしてビルドする必要はありませんでした)。