有時(shí)我們?cè)趯慳ndroid代碼的時(shí)候會(huì)需要對(duì)一些java代碼做測(cè)試,那么怎么在studio中寫java測(cè)試代碼呢,下面介紹兩種方法:
- 在自己的項(xiàng)目中新建java module來執(zhí)行java代碼
- 在自己的項(xiàng)目中利用ExampleUnitTest做java代碼測(cè)試
ok糠赦,現(xiàn)在就對(duì)這兩種方式一 一說來测垛。
1.建java的module來做java測(cè)試
第一步纵柿,打開你自己的項(xiàng)目,然后新建module婴栽,如下圖:
點(diǎn)擊后出現(xiàn)的界面是下面這樣的,選擇 java Library 并點(diǎn)擊next
在下一個(gè)界面辈末,給自己的java module取個(gè)名字愚争,然后主函數(shù)類名,我的module命名為JavaTest本冲,主函數(shù)類名為MyClass准脂,然后點(diǎn)擊finish
最后java module建成功后是這樣的:
打開MyClass類,寫上我們熟悉的main函數(shù):
public class MyClass {
public static void main(String []args){
System.out.println("我是主函數(shù)");
}
}
第二步檬洞,配置java module運(yùn)行條件
java module新建成功后并不能馬上運(yùn)行狸膏,會(huì)出現(xiàn)如下情形:
這時(shí)候,就需要對(duì)java module進(jìn)行配置添怔,配置步驟如下:
main class為你設(shè)置的java主函數(shù)類名湾戳,working directory一般默認(rèn)為當(dāng)前項(xiàng)目地址贤旷,然后 Use classpath of module 為你的javaTest,最后點(diǎn)擊ok即可砾脑。
這里的 main class 可能會(huì)出現(xiàn)如下問題:
原因就是你在新建java module后沒有在MyClass.java中寫上主函數(shù)幼驶,可能你的MyClass.java是這樣的:
public class MyClass {
}
需要寫全:
public class MyClass {
public static void main(String[] args){
System.out.println("====我是中國(guó)人==pp==");
}
}
然后再執(zhí)行上述配置即可。
這樣韧衣,java的module就配置好了盅藻。然后
就可以運(yùn)行了,然而畅铭,這里可能出現(xiàn)亂碼問題:
這時(shí)需要檢查編碼格式問題氏淑,一般我們默認(rèn)使用的編碼格式為 utf-8,所以先看studio設(shè)置的編碼格式是否為utf8硕噩,設(shè)置方式如下:
file---->settings...
需要注意的是 IDE Encoding假残,Project Encoding,Default encoding for properties files 都要為 UTF-8 格式炉擅,然后 Transparent native-to-ascii conversion 前面需要勾上辉懒。然后點(diǎn)擊 apply,點(diǎn)擊ok即可谍失。
然后再運(yùn)行眶俩,可能還是會(huì)出現(xiàn)中文亂碼的情況,這時(shí)則需要在java module的 builde gradle中去設(shè)置了袱贮。如圖仿便,打開java module的gradle:
這時(shí)會(huì)看到gradle中的代碼是這樣的:
apply plugin: 'java'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
我們需要在gradle中加入編碼格式的設(shè)置,
1.新版gradle
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
2.舊版gradle
tasks.withType(Compile) {
options.encoding = "UTF-8"
}
我的studio為2.3.1攒巍,需要添加新版的配置嗽仪,則java gradle中是這樣的:
apply plugin: 'java'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
在studio中點(diǎn)擊下保存,重新運(yùn)行MyClass柒莉,如果控制臺(tái)還是出現(xiàn)中文打印亂碼闻坚,則繼續(xù)做如下設(shè)置
追加 -Dfile.encoding=UTF-8
關(guān)閉文件并重啟項(xiàng)目,再次運(yùn)行MyClass,得到如下信息:
ok兢孝,運(yùn)行成功窿凤!那么,新建java module執(zhí)行java代碼的方式就可以了跨蟹。
2.利用ExampleUnitTest做java代碼測(cè)試
這種方式就比較簡(jiǎn)單了雳殊,直接看下圖:
這樣,就可以很方便的看到j(luò)ava代碼執(zhí)行出來的結(jié)果了窗轩。
ok夯秃,今天有關(guān)java代碼測(cè)試的知識(shí)就講到這里,謝謝誒。