有時我們在寫android代碼的時候會需要對一些java代碼做測試,那么怎么在studio中寫java測試代碼呢,下面介紹兩種方法:
- 在自己的項目中新建java module來執行java代碼
- 在自己的項目中利用ExampleUnitTest做java代碼測試
ok,現在就對這兩種方式一 一說來。
1.建java的module來做java測試
第一步,打開你自己的項目,然后新建module,如下圖:
點擊后出現的界面是下面這樣的,選擇 java Library 并點擊next
在下一個界面,給自己的java module取個名字,然后主函數類名,我的module命名為JavaTest,主函數類名為MyClass,然后點擊finish
最后java module建成功后是這樣的:
打開MyClass類,寫上我們熟悉的main函數:
public class MyClass {
public static void main(String []args){
System.out.println("我是主函數");
}
}
第二步,配置java module運行條件
java module新建成功后并不能馬上運行,會出現如下情形:
這時候,就需要對java module進行配置,配置步驟如下:
main class為你設置的java主函數類名,working directory一般默認為當前項目地址,然后 Use classpath of module 為你的javaTest,最后點擊ok即可。
這里的 main class 可能會出現如下問題:
原因就是你在新建java module后沒有在MyClass.java中寫上主函數,可能你的MyClass.java是這樣的:
public class MyClass {
}
需要寫全:
public class MyClass {
public static void main(String[] args){
System.out.println("====我是中國人==pp==");
}
}
然后再執行上述配置即可。
這樣,java的module就配置好了。然后
就可以運行了,然而,這里可能出現亂碼問題:
這時需要檢查編碼格式問題,一般我們默認使用的編碼格式為 utf-8,所以先看studio設置的編碼格式是否為utf8,設置方式如下:
file---->settings...
需要注意的是 IDE Encoding,Project Encoding,Default encoding for properties files 都要為 UTF-8 格式,然后 Transparent native-to-ascii conversion 前面需要勾上。然后點擊 apply,點擊ok即可。
然后再運行,可能還是會出現中文亂碼的情況,這時則需要在java module的 builde gradle中去設置了。如圖,打開java module的gradle:
這時會看到gradle中的代碼是這樣的:
apply plugin: 'java'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
我們需要在gradle中加入編碼格式的設置,
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中點擊下保存,重新運行MyClass,如果控制臺還是出現中文打印亂碼,則繼續做如下設置
追加 -Dfile.encoding=UTF-8
關閉文件并重啟項目,再次運行MyClass,得到如下信息:
ok,運行成功!那么,新建java module執行java代碼的方式就可以了。
2.利用ExampleUnitTest做java代碼測試
這種方式就比較簡單了,直接看下圖:
這樣,就可以很方便的看到java代碼執行出來的結果了。
ok,今天有關java代碼測試的知識就講到這里,謝謝誒。