尽力不打扰android开发人员。 我已经签出了一个分支来在Gitlab中设置CI / CD管道,以便可以从源代码构建APK。
该应用使用Android Studio可以正常运行,但是在docker内部使用gradlew
构建时失败。
第一个错误是:
:app:compileDebugJavaWithJavacwarning: Supported source version 'RELEASE_7' from annotation processor 'android.arch.persistence.room.RoomProcessor' less than -source '1.8'
/builds/root/android-build/app/src/main/java/rs/project/ssam/drive/database/AppDatabase.java:17: warning: Schema export directory is not provided to the annotation processor so we cannot export the schema. You can either provide `room.schemaLocation` annotation processor argument OR set exportSchema to false.
public abstract class AppDatabase extends RoomDatabase {
设置exportSchema = false
后
并出现另一个错误
:app:compileDebugJavaWithJavac/builds/root/android-build/app/src/main/java/rs/project/ssam/drive/api/repository/UserRepository.java:25: error: no suitable method found for injectInto(rs.project.ssam.drive.api.repository.UserRepository)
App.getInstance().getComponent().injectInto(this);
在这里,我被困在了地方,并在“强制”他们提供帮助之前,尝试进行更多的研究。
欢迎任何建议。
答案 0 :(得分:0)
在检查代码时,我意识到有两个不同的UserRepository.java
类位于不同的包中并且使用不同的方法。
导入正确的一个后,问题就解决了。