次のような構造のapplication.conf
ファイルがあります。
poller {
datacenters = []
}
コマンドラインで"datacenters"
をオーバーライドしたい。
値が単純なタイプ(文字列、数値)である他の構成キーの場合、-Dpath.to.config.value=<value>
を使用してオーバーライドできます。これは正常に機能します。
しかし、私はlist sに対してこれを行う方法を見つけることができないようです。上記の例では、"datacenters"
を["SJC", "IAD"]
に-Dpoller.datacenters="['SJC', 'IAD']"
に設定しようとしましたが、キー値がリストではなく文字列であるという例外が発生します。
この値がリストであることをタイプセーフな設定ライブラリに通知する方法はありますか?
このための代替構文がバージョン1.0.1に実装されています。
-Dpoller.datacenters.0=SJC -Dpoller.datacenters.1=IAD
私は数週間前に同じ問題を抱えていて、最終的に何が起こっているのかを理解するためにソースコードに飛び込みました:
修正はそれほど難しくありませんが、誰かが時間をかけて修正する必要があります。