3

Java Maven プロジェクトを含む 2 つのリポジトリがあります。

  • コア機能を備えたプロジェクト、その中の他のプロジェクトへの依存関係のみ、またはパブリック ライブラリへの依存関係を含むもの
  • 最初のリポジトリのいくつかのプロジェクトに依存するプロジェクトを含むもの

各リポジトリを maven on pull でコンパイルする Github アクションを設定しました。最初はこれで問題なく動作します。2 番目のリポジトリでは、2 番目のリポジトリをビルドするときに最初のリポジトリのプロジェクトが環境内の maven で使用できないため、これは機能しません。

この問題を解決するために2つのアイデアがありました

  • 最初のリポジトリを含めるために、2 番目のリポジトリにサブモジュールを作成します。
  • さらに、最初のリポジトリのビルドで最初のリポジトリをチェックアウトします

どちらのソリューションもおそらく機能しますが、最初のリポジトリを追加でビルドするためにすべてのビルド時間が必要になります。

これは Github アクションです (現在、両方のリポジトリで同じです):

name: Java CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up JDK 1.8
      uses: actions/setup-java@v1
      with:
        java-version: 1.8
    - name: Build with Maven
      run: mvn package --file pom.xml

再ビルドせずに、2 番目のリポジトリで最初のリポジトリのビルドを使用する方法はありますか?

これは固有の問題ではなく、ベスト プラクティスの解決策が必要だと思います。

4

1 に答える 1