2016-09-14 12 views
0

特定のファイルをディレクトリからGradleと同期しようとしています。しかし、私は解決できないような奇妙なエラーが発生します。同期している間にファイルをフィルタリングする方が良い(働く)方法があれば、それも歓迎すべきことです。include not found copySpec/SyncタスクGradle

実現1

def updateAbstractsContentSpec = copySpec { 
    from('../../base') { 
     includes "../../base/shared/**/*_abstract.*" 
    } 
} 

task updateAbstracts(type: Sync) { 
    group 'build' 
    with updateAbstractsContentSpec 
} 

エラー1

Error:(24, 0) Could not find method includes() for arguments [../../base/shared/**/*_abstract.*] on object of type org.gradle.api.internal.file.copy.CopySpecWrapper_Decorated. 

実装2(好ましい)

task updateAbstracts(type: Sync) { 
    group 'build' 
    from '../../base' 
    includes '../../base/shared/**/*_abstract.*' 
} 

エラー2

Error:(23, 0) Could not find method includes() for arguments [../../base/shared/**/*_abstract.*] on task ':apps:TestApp1:updateAbstracts' of type org.gradle.api.tasks.Sync. 

私は私がやろうものを、その明確なことを想定しています。誰かが私にこれを手伝ってくれることを願っています。

答えて

1

Gradle 3.0 CopySpec documentationのように、CopySpecにはincludesのメソッドが含まれていません。あなたが使用する必要があります

ではなく、次のとおりです

task updateAbstracts(type: Sync) { 
    group 'build' 
    from '../../base' 
    include '../../base/shared/**/*_abstract.*' 
} 
+0

ザッツ正しい私はaswell私のミスを発見しました。 –