电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Android Studio 中運行 groovy 程序的方法圖文詳解

瀏覽:81日期:2022-09-26 17:12:40

Groovy簡介

Groovy是一種基于JVM(Java虛擬機)的敏捷開發語言,它結合了Python、Ruby和Smalltalk的許多強大的特性,Groovy 代碼能夠與 Java 代碼很好地結合,也能用于擴展現有代碼。由于其運行在 JVM 上的特性,Groovy也可以使用其他非Java語言編寫的庫。

Groovy 是 用于Java虛擬機的一種敏捷的動態語言,它是一種成熟的面向對象編程語言,既可以用于面向對象編程,又可以用作純粹的腳本語言。使用該種語言不必編寫過多的代碼,同時又具有閉包和動態語言中的其他特性。Groovy是JVM的一個替代語言(替代是指可以用 Groovy 在Java平臺上進行 Java 編程),使用方式基本與使用 Java代碼的方式相同,該語言特別適合與Spring的動態語言支持一起使用,設計時充分考慮了Java集成,這使 Groovy 與 Java 代碼的互操作很容易。(注意:不是指Groovy替代java,而是指Groovy和java很好的結合編程。

運行 groovy 程序

首先由幾個需要注意的地方

1.最好不要在Java Libray module 以外的其他類型module,運行groovy程序,腳本類的還問題不大,如果是在GroovyConsole運行java類的groovy程序時,就明顯無法執行了。

因為 groovy 插件和 android 插件不兼容,所以不能在Android 相關的module上使用 groovy。

Android Studio 中運行 groovy 程序的方法圖文詳解

工程build失敗,原因如下:

Caused by: com.android.build.gradle.internal.BadPluginException: The ’java’ plugin has been applied, but it is not compatible with the Android plugins.

2.雖然不推薦在Java Library之外的其他模塊運行groovy程序,但是只要把該模塊的build gradle文件改為以下內容,腳本類和java類groovy程序還是能執行的,但是這也失去了該module的意義了吧,所以還是推薦使用Java Library 運行groovy程序,當然如果只是學習groovy都為所謂。

apply plugin: ’groovy’dependencies { implementation fileTree(dir: ’libs’, include: [’*.jar’]) implementation localGroovy() }

apply plugin: ‘groovy’ 會引入 groovy 插件,groovy 插件繼承了 java 插件。 implementation localGroovy() 會引入 Gradle 所帶的 Groovy 庫。

還是上面講過的Android 和 groovy 插件不能同時存在,即下圖這種方式是不允許的

Android Studio 中運行 groovy 程序的方法圖文詳解

java-library 插件和 groovy插件可以同時存在

Android Studio 中運行 groovy 程序的方法圖文詳解

根據上述需要注意的問題,正確步驟如下

1.新建一個Java Library module

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

2.修改該module下的build gradle 文件,如下

Android Studio 中運行 groovy 程序的方法圖文詳解

3.src/ main目錄下新建 groovy 文件夾,并新建 Test.groovy 文件

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

1 、運行Java 式的 Groovy

按以上步驟完成后,編寫demo如下,點擊運行即可

apply plugin: ’groovy’dependencies { implementation fileTree(dir: ’libs’, include: [’*.jar’]) implementation localGroovy() }

Android Studio 中運行 groovy 程序的方法圖文詳解

雖然運行成功了,但是提示

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.

此版本中使用了不推薦使用的Gradle功能,使其與Gradle 6.0不兼容。

回到當前module 下的 build.gradle文件,添加如下代碼:

task renameGroovyToJava { doLast{ delete '$buildDir/classes/java' File file = new File('$buildDir/classes/groovy') println file.renameTo('$buildDir/classes/java') }}

Android Studio 中運行 groovy 程序的方法圖文詳解

同步后,點擊運行

Android Studio 中運行 groovy 程序的方法圖文詳解

1.1 原理

點擊運行后,通過查看 android studio 控制臺信息發現,它執行了 compileJava Task,于是將 compileGroovy Task 附著在 compileJava 后面,compileGroovy task 完成后,再將 build/classes/groovy 文件夾重命名為 java。從而使 android studio 可以執行 groovy 編譯后的 class 文件。

前后對比如下:

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

2 、腳本式的 Groovy

1.在Test.groovy相同路徑下創建新的groovy文件,如下

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

2.編寫 groovy 文件,如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

3.找到工具欄的這個地方,選擇 Edit Configurations...,在彈出的頁面點擊左上角的加號 Add New Configuration,再選擇groovy

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

4.然后只需要填寫 Name、Script path 就可以,Name 隨便寫,跟groovy文件名相同即可,Script path就選擇上面 MyGroovy 類的路徑。

Android Studio 中運行 groovy 程序的方法圖文詳解

5.現在工具欄如下,點擊下圖中紅款中的綠三角,運行groovy程序

Android Studio 中運行 groovy 程序的方法圖文詳解

運行結果如下

Android Studio 中運行 groovy 程序的方法圖文詳解

注意

腳本類 groovy 的配置方法,同樣可以用來執行 Java 類的 groovy,但 java 類的配置方法不能運行腳本類的 groovy。上面名為Test.groocy的Java 類的 groovy按照腳本類 groovy 的配置方法配置完成后運行如下:

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

Groovy console

android studio 的標題欄進入 Tools/Groovy Console。這里也可以直接運行 groovy 程序(java類的和腳本類的都可以)。

Android Studio 中運行 groovy 程序的方法圖文詳解

Groovy console 運行腳本類 非常簡單,直接在編寫點擊左上角運行按鈕即可

Android Studio 中運行 groovy 程序的方法圖文詳解

上圖就是點擊Groovy Console后創建的,編輯代碼點擊左上角三角符號后運行結果如下

Android Studio 中運行 groovy 程序的方法圖文詳解

Groovy console 運行java類 就比較麻煩了,我覺得也沒有必要把java類在groovy console中運行,下面我還是說一下我踩過的坑和步驟吧

我之前創建的module是Android Library,該module的名字是groovy,然后build gradle 文件把Android 插件去掉了,如下圖

Android Studio 中運行 groovy 程序的方法圖文詳解

然后我們在新的Groovy Console中隨便編寫一個class,代碼如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

點擊運行,選擇 Run ’Test1.main()’:

Android Studio 中運行 groovy 程序的方法圖文詳解

選擇 Run ’Test1.main()’后彈框如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

上面已經提及到了,以上都是我在名為groovy Android Library module下進行的操作

Android Studio 中運行 groovy 程序的方法圖文詳解

選擇完module后,提示如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

所以還必須創建一個名為Test1的class文件,那我們問什么還要使用Groovy Console呢,直接運行java類的groovy程序就行了

我這里有一個之前的Test.class,直接把console里面的改一下名字,如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

Android Studio 中運行 groovy 程序的方法圖文詳解

然后繼續按上述步驟執行,這次全部OK了

Android Studio 中運行 groovy 程序的方法圖文詳解

點擊Run之后,運行結果如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

上面是正常的流程,不管是什么類型的module,只要build gradle 按上面配置,然后一步一步執行都能正常運行。

但是我之前把groovy插件和Android插件放到了一起,如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

雖然build失敗如下,但我沒有理會:

Android Studio 中運行 groovy 程序的方法圖文詳解

這個時候我們還是按上面 Groovy Console執行java類程序 正常的步驟執行,會提示如下:

Cause: compileSdkVersion is not specified. Please add it to build.gradle

即 原因:未指定compileSdkVersion,請將其添加到build.gradle

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

然后我們把compileSdkVersion添加到build gradle文件中,如下:

Android Studio 中運行 groovy 程序的方法圖文詳解

再次按照 Groovy Console執行java類程序 正常步驟執行,提示如下:

The ’java’ plugin has been applied, but

it is not compatible with the Android plugins.

已經應用了“java”插件,但它與Android插件不兼容。還是一開始build提示的問題,所以說最好在Java Library 執行groovy程序

Android Studio 中運行 groovy 程序的方法圖文詳解 Android Studio 中運行 groovy 程序的方法圖文詳解

到此這篇關于Android Studio 中運行 groovy 程序的方法圖文詳解的文章就介紹到這了,更多相關Android Studio 運行 groovy 程序內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Android
相關文章:
主站蜘蛛池模板: 成都亚克力制品,PVC板,双色板雕刻加工,亚克力门牌,亚克力标牌,水晶字雕刻制作-零贰捌广告 | 合肥仿石砖_合肥pc砖厂家_合肥PC仿石砖_安徽旭坤建材有限公司 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 叉车电池-叉车电瓶-叉车蓄电池-铅酸蓄电池-电动叉车蓄电池生产厂家 | 煤矿人员精确定位系统_矿用无线通信系统_煤矿广播系统 | 振动台-振动试验台-振动冲击台-广东剑乔试验设备有限公司 | 耳模扫描仪-定制耳机设计软件-DLP打印机-asiga打印机-fitshape「飞特西普」 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 干式变压器厂_干式变压器厂家_scb11/scb13/scb10/scb14/scb18干式变压器生产厂家-山东科锐变压器有限公司 | 不锈钢水管-不锈钢燃气管-卫生级不锈钢管件-不锈钢食品级水管-广东双兴新材料集团有限公司 | 冷油器-冷油器换管改造-连云港灵动列管式冷油器生产厂家 | 运动木地板价格,篮球馆体育运动木地板生产厂家_欧氏地板 | 油漆辅料厂家_阴阳脚线_艺术漆厂家_内外墙涂料施工_乳胶漆专用防霉腻子粉_轻质粉刷石膏-魔法涂涂 | 安徽泰科检测科技有限公司【官方网站】 | IIS7站长之家-站长工具-爱网站请使用IIS7站长综合查询工具,中国站长【WWW.IIS7.COM】 | 鑫铭东办公家具一站式定制采购-深圳办公家具厂家直销 | 优考试_免费在线考试系统_培训考试系统_题库系统_组卷答题系统_匡优考试 | 湖南长沙商标注册专利申请,长沙公司注册代理记账首选美创! | 合金耐磨锤头_破碎机锤头_郑州市德勤建材有限公司 | 高压互感器,电流互感器,电压互感器-上海鄂互电气科技有限公司 | 实验室装修_实验室设计_实验室规划设计- 上海广建净化工程公司 | 密封无忧网 _ 专业的密封产品行业信息网 | POS机官网 - 拉卡拉POS机免费办理|官网在线申请入口 | 济南玻璃安装_济南玻璃门_济南感应门_济南玻璃隔断_济南玻璃门维修_济南镜片安装_济南肯德基门_济南高隔间-济南凯轩鹏宇玻璃有限公司 | 货车视频监控,油管家,货车油管家-淄博世纪锐行电子科技 | 生态板-实木生态板-生态板厂家-源木原作生态板品牌-深圳市方舟木业有限公司 | 金属抛光机-磁悬浮抛光机-磁力研磨机-磁力清洗机 - 苏州冠古科技 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 | 水平筛厂家-三轴椭圆水平振动筛-泥沙震动筛设备_山东奥凯诺矿机 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 压缩空气检测_气体_水质找上海京工-服务专业、价格合理 | 杭州营业执照代办-公司变更价格-许可证办理流程_杭州福道财务管理咨询有限公司 | 工业用品一站式采购平台|南创工品汇-官网|广州南创 | 不锈钢闸阀_球阀_蝶阀_止回阀_调节阀_截止阀-可拉伐阀门(上海)有限公司 | 冷油器-冷油器换管改造-连云港灵动列管式冷油器生产厂家 | 氧化锆陶瓷_氧化锆陶瓷加工_氧化锆陶瓷生产厂家-康柏工业陶瓷有限公司 | 水厂污泥地磅|污泥处理地磅厂家|地磅无人值守称重系统升级改造|地磅自动称重系统维修-河南成辉电子科技有限公司 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 新车测评网_网罗汽车评测资讯_汽车评测门户报道 | 天然鹅卵石滤料厂家-锰砂滤料-石英砂滤料-巩义东枫净水 | PVC快速门-硬质快速门-洁净室快速门品牌厂家-苏州西朗门业 |