小編給大家分享一下Android Studio無法執(zhí)行Java類的main方法怎么辦,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
10年積累的做網(wǎng)站、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先建設(shè)網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有安源免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
Android Studio升級到哦最新版3.6.1后,新建了個項目,發(fā)現(xiàn)無法執(zhí)行Java類的main方法。試了網(wǎng)上的各種方法,比如切換gradle離線模式、gradle.properties中添加android.enableAapt2=false等,我還嘗試了重新情況Gradle緩存、重新下載gradle等方式,都沒用。
環(huán)境
android studio版本:3.6.1
gradle版本:5.6.4
gradle插件版本:3.6.1
錯誤提示
11:41:35 PM: Executing task 'TxtUtil.main()'...
Executing tasks: [TxtUtil.main()] in project /Users/tinytongtong/Documents/workspace/as/self/BlogDemo
FAILURE: Build failed with an exception.* Where:
Initialization script '/private/var/folders/qw/8_p1t59142d0xntgn799rt1c0000gn/T/TxtUtil_main__.gradle' line: 20* What went wrong:
A problem occurred configuring project ':app'.
> Could not create task ':app:TxtUtil.main()'.
> SourceSet with name 'main' not found.* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.6.4/userguide/command_line_interface.html#sec:command_line_warningsBUILD FAILED in 207ms
11:41:35 PM: Task execution finished 'TxtUtil.main()'.
解決方案:
方案一:暫時的替代方案
Run "XXX.main()" with Coverage
方案二:修改.idea/gradle.xml文件
Android Studio使用gradle作為構(gòu)建工具,所以歸根到底還是gradle配置的問題。我先找一個沒問題的項目,再打開新創(chuàng)建的項目,對比著看他們的gradle配置。經(jīng)過對比和嘗試,發(fā)現(xiàn).idea/gradle.xml文件內(nèi)部不同,并且參照老項目進(jìn)行修改是有效的。
老項目的.idea/gradle.xml:
<?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="GradleMigrationSettings" migrationVersion="1" /> <component name="GradleSettings"> <option name="linkedExternalProjectsSettings"> <GradleProjectSettings> <option name="delegatedBuild" value="false" /> <option name="testRunner" value="PLATFORM" /> <option name="distributionType" value="DEFAULT_WRAPPED" /> <option name="externalProjectPath" value="$PROJECT_DIR$" /> <option name="modules"> <set> <option value="$PROJECT_DIR$" /> <option value="$PROJECT_DIR$/app" /> ... </set> </option> <option name="resolveModulePerSourceSet" value="false" /> </GradleProjectSettings> </option> </component> </project>
新項目的.idea/gradle.xml:
<?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="GradleMigrationSettings" migrationVersion="1" /> <component name="GradleSettings"> <option name="linkedExternalProjectsSettings"> <GradleProjectSettings> <option name="testRunner" value="PLATFORM" /> <option name="distributionType" value="DEFAULT_WRAPPED" /> <option name="externalProjectPath" value="$PROJECT_DIR$" /> <option name="modules"> <set> <option value="$PROJECT_DIR$" /> <option value="$PROJECT_DIR$/app" /> </set> </option> <option name="resolveModulePerSourceSet" value="false" /> </GradleProjectSettings> </option> </component> </project>
經(jīng)過對比發(fā)現(xiàn),新項目的<GradleProjectSettings>
標(biāo)簽下少了<option name="delegatedBuild" value="false" />
這行配置,然后給新項目添加這行配置,運行代碼發(fā)現(xiàn)成功了。
根據(jù)配置的字面意思理解,這個設(shè)置的意思是不委托g(shù)radle進(jìn)行構(gòu)建。現(xiàn)實效果也是加了這行配置之后就是jvm執(zhí)行Java類的main方法了,而不是gradle當(dāng)做task來執(zhí)行了。
知識點補(bǔ)充,參考方法
Android Studio 3.0 無法運行Java代碼main() 方法的解決方案
Android Studio 升級到3.0 以后發(fā)現(xiàn) 運行Java 代碼中的main()方法的時候grandle 就會報錯的問題
解決方法 :
打開工程目錄下的下圖標(biāo)注的文件:
打開文件后 在文件中添加
android.enableAapt2=false
最后同步一下 OK!
看完了這篇文章,相信你對“Android Studio無法執(zhí)行Java類的main方法怎么辦”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
新聞標(biāo)題:AndroidStudio無法執(zhí)行Java類的main方法怎么辦
分享地址:http://www.rwnh.cn/article16/jdccdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、企業(yè)網(wǎng)站制作、企業(yè)建站、靜態(tài)網(wǎng)站、微信公眾號、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)