Travis CI Android 构建未能检测到 Product Flavor 目录中的文件
Travis CI Android build failed to detect file in Product Flavour directory
我的 Android 项目有两个产品风味 FlavourOne & FlavourTwo 和 BuildType Debug & 发布.
我的项目src目录有
- 主要
- FlavourOneDebug
- FlavourOneRelease
- FlavourTwoDebug
- FlavourTwoRelease
xxx.xxx.test.constant.FlavourConstant 放在 FlavourOneDebug, FlavourOneRelease, FlavourTwoDebug, FlavourTwoRelease 而不是在主目录
xxx.xxx.test.MainActivity 放在主目录下 imports FlavourConstant
这是我的 travis.yml
language: android
sudo: required
jdk: oraclejdk8
android:
components:
# The BuildTools version used by your project
- build-tools-26.0.2
# The SDK version used to compile your project
- android-26
# Additional components
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
- $HOME/.android/build-cache
before_install:
- mkdir "$ANDROID_HOME/licenses" || true
- echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license"
- echo -e "\n84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_HOME/licenses/android-sdk-preview-license"
script:
- ./gradlew build --stacktrace
Travis CI 无法从产品风味目录中引用 FlavourConstant。
参考 Travis 失败的工作 https://travis-ci.org/KarthikUCH/MokaTest/jobs/527169383
终于解决了问题,其实是flavor源集目录命名问题
Travis 中的 Gradle 任务要求 flavor 目录区分大小写。
将目录命名形式 flavoruonedebug
更改为 flavoruoneDebug
解决了问题
我的 Android 项目有两个产品风味 FlavourOne & FlavourTwo 和 BuildType Debug & 发布.
我的项目src目录有
- 主要
- FlavourOneDebug
- FlavourOneRelease
- FlavourTwoDebug
- FlavourTwoRelease
xxx.xxx.test.constant.FlavourConstant 放在 FlavourOneDebug, FlavourOneRelease, FlavourTwoDebug, FlavourTwoRelease 而不是在主目录
xxx.xxx.test.MainActivity 放在主目录下 imports FlavourConstant
这是我的 travis.yml
language: android
sudo: required
jdk: oraclejdk8
android:
components:
# The BuildTools version used by your project
- build-tools-26.0.2
# The SDK version used to compile your project
- android-26
# Additional components
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
- $HOME/.android/build-cache
before_install:
- mkdir "$ANDROID_HOME/licenses" || true
- echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license"
- echo -e "\n84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_HOME/licenses/android-sdk-preview-license"
script:
- ./gradlew build --stacktrace
Travis CI 无法从产品风味目录中引用 FlavourConstant。
参考 Travis 失败的工作 https://travis-ci.org/KarthikUCH/MokaTest/jobs/527169383
终于解决了问题,其实是flavor源集目录命名问题
Travis 中的 Gradle 任务要求 flavor 目录区分大小写。
将目录命名形式 flavoruonedebug
更改为 flavoruoneDebug
解决了问题