WindowsビルドサーバーのJenkinsでAndroidビルドパイプラインを準備しています。 Jenkinsは多くのワークスペースを使用し、それらを再利用することがよくあります。私は、Jenkinsがワークスペースを再利用するときに問題はなく、ビルドが完璧に進んでいることに気付きました。しかし、最初に新しいワークスペースをチェックアウトすると、グラデルラッパーはAndroidビルドツールをインストールできないと不平を言う。ビルドツール(正確なバージョン)は既にインストールされています。Androidスタジオで開かない限り、GradleはAndroidビルドツールを手に入れません
別の古いワークスペースを開いてそこでgradleビルドを実行すると、完全に動作し、同じログインで同じセッションのcmd
セッションで新しいワークスペースに移動して同じコマンドを実行すると、 Androidビルドツールをインストールすることはできません。
Androidの設定に関する注意:私はC:\android-sdk\
にAndroid SDKを保存しており、すべてのユーザーにそのディレクトリへのアクセス権を与えました。 ANDROID_HOMEおよびANDROID_SDKは、システム全体の変数として設定されます。これは最も便利なソリューションです。ログインするユーザー、ドメインアカウントなどは、理論的には独自のSDKを設定せずにすぐにソリューションを構築することができます。複製されたSDKデータの
Android Studioでワークスペースフォルダを開いて手動で問題を解決できます。これを一人で行うだけで問題を解決するようです。私の仮説は、どこに、Androidのビルドツールがどこにあるかをgraleに伝えるプロジェクトメタデータにキャッシュされた値があり、Android Studioを開くと、この値が更新されるという仮説です。
明らかに、人間の介入なしにビルドが一貫して動作する必要があるため、回避策は適切ではありません。このキャッシュを更新するために使用できるコマンドはありますか?あるいは、gitにチェックインされているはずの設定ファイルがありますか?