我正在使用Android Studio 3.0 beta 6/gradle:3.0.0-beta6,今天我遇到了編譯問題。AndroidStudio gradle build locked:app:compileDebugJavaWithJavac使用
當我開始構建(CTRL + F9)時,過程停止運行:":app:compileDebugJavaWithJavac"
我等了1個多小時,沒有任何變化。
Gradle同步是好的,問題只是編譯。
我認爲這是我的項目中的一個問題,因爲我可以編譯另一個沒有問題的Android Studio版本的項目。
我對這個問題做了很多改變,我不清楚問題出在哪裏。
我gradle這個文件包含此:
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support:support-v4:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
compile 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
compile "android.arch.persistence.room:runtime:1.0.0-alpha9-1"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0-alpha9-1"
compile 'com.google.android.gms:play-services-vision:11.4.0'
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.google.code.gson:gson:2.8.1'
compile 'com.squareup.retrofit2:converter-gson:2.2.0'
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.1'
compile 'com.google.guava:guava:21.0'
我嘗試:
- 關閉/重啓AndroidStudio
- 重新安裝JAVA JDK
- 清潔工程/重建項目
- 刪除文件夾。 gradle
- r ollback gradle文件更改
但問題仍然存在。
任何想法? THKS。
編輯:我發現,因爲當我評論這個屬性的問題與間持久性庫:
@Database(entities = {Task.class}, version = 1)
構建成功運行。
這是我的數據庫類:
@Database(entities = {Task.class}, version = 1)
public abstract class MainDatabase extends RoomDatabase {
private static MainDatabase INSTANCE;
public abstract MainDao mainDao();
private static final Object sLock = new Object();
public static MainDatabase getInstance(Context context) {
if (INSTANCE == null) {
INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
MainDatabase.class, "tr.db")
.build();
}
return INSTANCE;
}
}
這是我的實體類:
@Entity(tableName = "tasks")
public class Task {
@PrimaryKey
@SerializedName("TaskID")
@Expose
public int taskID;
@SerializedName("TaskNumber")
@Expose
public int taskNumber;
@Embedded
@SerializedName("ParentTask")
@Expose
public Task parentTask;
}