2017-11-05 12 views
1

当社のマルチプロジェクトのビルドには、次の構造を有する:私はルートプロジェクトディレクトリからビルドアーティファクトをgradle buildを実行するとGradleのマルチプロジェクト:ディレクトリ作成Kotlinアーティファクトを含むルートディレクトリに表示されます

root-project \-project1 \-project2 \-build.gradle \-settings.gradle

をproject1(Kotlinプロジェクトではない)のproject1/buildディレクトリの下に残っています。ただし、ルートディレクトリの下には、build/kotlinbuild/kotlin-buildというディレクトリのみを含むビルドディレクトリが表示されます。

gradle buildroot-project/project2から実行しても、同じ動作が表示されます。

:私は行動にいくつかの光を当てるできる私の root-dir/build.gradleに次き

root-dir/project2/build

:私はkotlinのすべてが下に置かれるアーティファクトを構築する力を注文する行方不明です

 

    task root-project(dependsOn: ':project1:build') { 
     doLast { 
      copy { 
       from project(':project1:').file('dist') 
       into project(':project2:').file('build/resources/main/static/') 
      } 
     } 
    } 

    project(':project1') { 
     task UI(dependsOn: ':project1:runAll') { 
      doLast { 
       println 'UI' 
      } 
     } 
    } 

    project(':project2') { 
     task API(dependsOn: ':project2:bootRun') { 
      doLast { 
       println 'API' 
      } 
     } 
    } 

答えて

0

結果の成果物は実際には期待どおりサブプロジェクトディレクトリの下に配置されます。

ルートプロジェクトのbuild/kotlinbuild/kotlin-buildディレクトリには、Kotlin Gradleプラグインがマルチモジュールのインクリメンタルコンパイルキャッシュなどのビルドに格納して使用する内部状態が含まれています。これはサブプロジェクト間で共有されるため、ルートプロジェクトディレクトリの下に配置されます。

つまり、それは心配するものではありません。

関連する問題