自動歸類及修復方法(Auto-Classifying-Fixing approach) 是一套用於建構失敗分類及建構修復的工具,透過分析錯誤訊息來找出失敗原因,並應用不同的修復策略來逐步修復專案。這個方法目前可以修復GitHub、GitLab上使用Java的Gradle專案。 本研究主要在於擴展這套方法以支援Android專案,分析Android專案特有的錯誤訊息,並依據錯誤原因提出新的分類,同時增加新的錯誤種類至現有的分類中,接著為新的錯誤原因產生新的修復策略。我們對從GitHub及GitLab收集的4694個Android專案進行自動建構,其中有2673個專案可以成功建構,有2021個專案建構失敗。通過套用ACF至建構失敗的2021個專案,有1038個專案可以被成功修復。
Auto-classification-fixing (ACF) approach aims to classify types of build errors and fix the errors based on fixing strategies, which have been used for Java-based Open-source projects such as GitHub and GitLab with Gradle building tool. This research work extends ACF to support Android projects, including analyzing build errors specific to Android projects, classifying new types of build errors, defining new fixing strategies for the new types of errors. A total of 4694 Android projects from GitHub has gone through the build process, with 2673 projects being successfully built, 2021 projects failed to be built. As a result of applying ACF, 1038 out of 2021 build erros have been successfully fixed.