2017-09-15 13 views
1

は比較:Gradleのbuild.gradleにおける '' vs ''の違いは何ですか?

compile 'org.apache.commons:commons-lang3:3.6' 
compile "org.apache.commons:commons-lang3:3.6" 

私はそれが""("")よりも簡単ですので、私のbuild.gradle''を使用するために使用されます。

compile 'org.apache.commons:commons-lang3:$versions.commonsLang'

compile "org.apache.commons:commons-lang3:$versions.commonsLang"は作業 です:

は、しかし、私は、余分な変数が

のGradleは解決できない、例えば、''を使用して動作しないことが判明しました。

答えて

4

'(単一引用符)はGStringに評価されます"(二重引用符)に対し、標準のJava Stringのために使用されています。

グラデーションスクリプト(この例では)はgroovyで書かれているので、docsもご覧ください。

2

お気づきのように、"variable interpolation/expansion inside the stringを、'は認めません。可変補間が必要ない場合は'を使用することは有効です。パフォーマンス上の理由から、コンパイラは変数名の文字列を解析する必要がないためです。それは$表現を持っているか、プレーンStringにそれはしていない場合

+0

コンパイラのパフォーマンス? –

+0

あなたが好きなら、パーサ。しかし、はい、私はマイクロ最適化が好きです:-D – sschuberth

+1

私は_ "マイクロ" _が大きすぎるサイズのカップルだと思います... "ナノ最適化"以下は何ですか? ; -P –

関連する問題