2017-08-30 15 views
0

ジェンキンスとGradleプラグインを使用するとJava/Springbootプロジェクトのビルドが非常に遅くなります。ときにトライチェックアウト手動で以下試してみてください。ジェンキンの構築に時間がかかりすぎる

のGradleのビルド

ビルドは非常に高速に実行します!それ以外の場合は約29分かかります。私はジェンキンスを経由して行うビルドの手順は、実際には同じである

enter image description here

SVNコードのチェックアウト部分は、両方の方法に高速です。ビルド部分だけが遅いです。何が問題なの?

+0

あなたはそれがJFrogのartifactoryを使用して、その時点 – DevDio

答えて

0

答えはアーティファクトのダウンロード時間だと思います。

2つのビルドを実行すると、2つ目のビルドが速く実行されますか? ローカルマシンから.gradleフォルダを削除してビルドしてください。どのくらいの時間がかかりましたか?

アーティファクト/ Nexusのアーティファクトリポジトリを使用していますか?

+0

でやっていることを確認するためにジェンキンスログを取得することができるはずですが、アーティファクトのダウンロードは、後にキャッシュされ、一度だけ発生して参照してください(初めての追加15分) を構築します すべてのビルドはほぼ同じ時間〜29分かかります。 –

+0

タイムスタンププラグインを使用していますか?今回はどのタスクが費やされているかを示します。だから、最初のビルドはJenkinsマシンで45分、第2の29分かかりますか?あなたのマシンでは3つしかありませんか?あなたは同じgradleバージョンを実行していますか?そして同じコマンド? Jenkinsのスレーブのビルドを手動で実行して期間を確認できますか? –

+0

タイムスタンププラグインを使用していません。 ジェンキンスの最初のビルド:45分(予想されるアーティファクトのダウンロードのための追加時間) 残りの部分:29分。 同じビルドサーバー上で、コマンド行〜3分で、同じジーンキンのワークスペースで、同じgradleバージョンを使用します。 –

0

引数を--profileに変更してgradleコマンドラインに追加して、レポートをbuild/reports/profileに書き込むことができます。そこから、いつどこの時間が費やされているかを見ることができます。 profiling a build

+0

これは実際に助けられました! :compileJava 8m59.97s :テスト8m38.40s :compileTestJava 6m52.34s :startScripts 6m26.26s :distZip 3.820s。 時間のように見えるのは、すべてのアクティビティです。 –

+0

おそらく、ソースファイルはgradleプロセスとは異なるマシン上にあるので、ネットワーク(ネットワークドライブなど)全体で何か起こっていますか?おそらく、ヒープのサイズが小さすぎると、全体的にGC'ingですか? –

関連する問題