如何在GitHub Actions中发布本地预构建Maven库以完成Android构建?
问题:GitHub Actions构建Android应用时提示
'rtmidi/rtmidi_c.h'文件未找到 我有一个用于构建Android应用的GitHub Actions脚本,需要引入项目开发前在本地预构建的ktmidi和rtmidi库以确保Android应用能正确构建。我添加了下载RtMidi 4.0.0的任务来本地发布该库,但构建时出现错误:'rtmidi/rtmidi_c.h' file not found。
以下是相关GitHub Actions代码:
当前版本
... jobs: build_android: name: Assemble android release, send it into App Distribution and notify other team runs-on: ubuntu-22.04 steps: - name: Checkout Repository uses: actions/checkout@v4 with: submodules: recursive - name: Install Dependencies run: | sudo apt-get update sudo apt-get install -y build-essential autoconf libtool pkg-config libasound2-dev libjack-jackd2-dev cmake ninja-build doxygen - name: Grant Permission for gradlew run: chmod +x gradlew - name: Initialize and Update Git Submodules run: git submodule update --init --recursive - name: Assemble Release run: ./gradlew assembleRelease ...
旧版本
jobs: build_android: name: Assemble android release, send it into App Distribution and notify other team runs-on: ubuntu-22.04 steps: - name: Checkout Repository uses: actions/checkout@v4 with: submodules: recursive - name: Install Dependencies run: | sudo apt-get update sudo apt-get install -y build-essential autoconf libtool pkg-config libasound2-dev libjack-jackd2-dev cmake ninja-build doxygen - name: Setup NDK Workaround run: sudo mkdir -p /usr/local/lib/android/sdk/ndk && sudo chmod 777 /usr/local/lib/android/sdk/ndk - name: Build and Publish ktmidi to Local Maven run: | ls -l ktmidi/ sed -i "s/signing {}/signing { sign(publishing.publications) }/" ktmidi/build.gradle.kts sed -i "s/signing {}/signing { sign(publishing.publications) }/" ktmidi-jvm-desktop/build.gradle sed -i "s/signing {}/signing { sign(publishing.publications) }/" ktmidi-native-ext/build.gradle.kts ./build-rtmidi.sh ./gradlew --warning-mode all build publishToMavenLocal env: GITHUB_TOKEN: ${{ secrets.MAVEN_PAT }} OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }} OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }} SIGNING_SECRET_KEY_RING_FILE: ${{ secrets.SIGNING_SECRET_KEY_RING_FILE }}
内容的提问来源于stack exchange,提问作者Denis Popkov
相关产品推荐
相关产品推荐

