2016-03-22 27 views
12

私は私のビルドスクリプトから(アンドロイドプラグインから来た)connectedCheckタスクを参照することができます。ビルドスクリプトでgradled task connectedDebugAndroidTestを使用できないのはなぜですか?

connectedCheck.finalizedBy AndroidShowTestResults 

しかし、(あまりにもアンドロイドプラグインから来た)connectedDebugAndroidTest

connectedDebugAndroidTest.finalizedBy AndroidShowTestResults 
を使用しようと

私を与える

Error:(48, 0) Could not find property 'connectedDebugAndroidTest' on project ':app'.

私は

task connectedDebugAndroidTest << {print '123'} 

をしようとNDそれは私がconnectedDebugAndroidTestを参照することはできませんなぜ私はundestandしません

Error:Cannot add task ':app:connectedDebugAndroidTest' as a task with that name already exists.

で私を呪い?

利用Gradleのタスクは以下の通りである:

Gradle tasks

答えて

3

試してみてください。これらのタスクを名前で参照しようとすると、「存在しない」タイプのエラーメッセージが表示される可能性があります。また

gradle.projectsEvaluated { 
    connectedDebugAndroidTest.finalizedBy AndroidShowTestResults 
} 

あなたは、すぐに特定のようなものを行うことができますので、あなたは、タスク・グラフのイベントにリスナーを追加することができます:あなたは延期が作成したタスクの周りの依存関係を追加したい場合は、設定が完了するまで待たなければなりませんタスクはタスクグラフに追加されます:

tasks.whenTaskAdded { task -> 
    if (task.name == 'connectedDebugAndroidTest') { 
     task.finalizedBy AndroidShowTestResults 
    } 
} 
+0

私は謝罪する私はあなたに恩恵を与えることができませんでした - 私のaccは中断されました。答えを説明してくれてありがとう。最初のコードスニペットは機能しませんが、secontは機能します。 – Alexey

+1

私のために働いた最初のコードスニペット – thepner

-1

私はあなたがテストを開き、再構築しようとするべきだと思います。

enter image description here

+0

このチェックボックスはありません。 Android Studio 1.5.1。 – Alexey

0

アンドロイドプラグインは、特に、構成相の非常に遅い段階までその中buildTypeや香りの名前を持つもの、いくつかのタスクの追加を延期

task connectedTest(dependsOn: ["connectedDebugAndroidTest"]){ 

} 
connectedTest.finalizedBy "AndroidShowTestResults" 
関連する問題