Travis无法构建Android项目,没有local.properties

时间:2017-03-16 07:25:31

标签: android gradle travis-ci

这是事情。我已经多次在Travis CI上建立了我的项目,但每次都遇到同样的问题。

错误日志:

What went wrong: A problem occurred evaluating root project 'LiteReader'. /home/travis/build/Mindjet/LiteReader/local.properties (No such file or directory)

我上传的项目确实没有local.properties ,我已将其排除,因为它包含特定于本地配置的信息。

这是我的.travis.yml

language: android
cache: bundler

android:
  components:
    - tools
    - build-tools-25.0.2
    - android-25
    - extra-android-m2repository
    - extra-android-support

before_install:
  - chmod +x gradlew

script:
      ./gradlew checkstyle build

我该如何解决这个问题?请帮忙,谢谢。

3 个答案:

答案 0 :(得分:2)

派对有点晚了,但我遇到了同样的问题并找到了一个更简单的解决方案:

before_script:
  - touch local.properties

这将在运行脚本之前创建文件,但不需要创建和添加"假的"将文件存入您的项目。

答案 1 :(得分:1)

我在使用 GitHub Actions CI

时遇到了同样的问题

问题是/local.properties(没有那个文件或目录),它是这样解决的:

- name: Touch local properties
  run: touch local.properties

- name: Add Api Key
  run: echo "apiKey=\"\"" >> local.properties

这将创建文件并将您的变量(例如:空 API 密钥)添加到其中然后添加代码以运行测试,它会通过而没有错误。

- name: Run Tests
  run: ./gradlew test

答案 2 :(得分:0)

我使用的是CircleCI而不是Travis,但我遇到了同样的问题:) 我把它修好了this,如果你能在特拉维斯做那样的事情,它应该为你做的伎俩(我没有看到你不能的原因)。

TL; DR

  1. 在“local.properties”的同一目录中创建“local.properties.ci”
  2. 在其中放入假数据,以便CI构建可以传递
  3. 将其添加到Git
  4. 在circle.yml中添加以下代码:
  5. checkout: post: - cp local.properties.ci local.properties