解決在Gradle/IDEA中無法正常使用readLine的問題原因
Gradle的標準輸入默認并不與系統(tǒng)標準輸入綁定,需手動設置
參考: https://stackoverflow.com/questions/13172137/console-application-with-java-and-gradle
問題
在Gradle構建的控制臺程序中,標準輸入readLine總是返回null
原因
Gradle的標準輸入默認并不與系統(tǒng)標準輸入綁定,需手動設置
解決方法
在build.gradle.kts中添加
tasks.named<JavaExec>("run") { standardInput = System.`in` }
如果需要更干凈的輸出,可以用
gradle console:run -q --console=plain
解決方法(Groovy)
在build.gradle中添加
run { standardInput = System.in }
補充:在 IDEA 開發(fā)環(huán)境里使用 jline 無法正常工作的問題處理
現象:在 IDEA 中開發(fā)應用,使用 jline 捕獲控制臺輸入時,無法正常運行,主要體現在如下代碼在輸入回車后無法執(zhí)行:
ConsoleReader reader = new ConsoleReader();
reader.readLine("> ");
解決的辦法:
在使用 jline 之前,執(zhí)行如下代碼即可:
jline.TerminalFactory.registerFlavor(TerminalFactory.Flavor.WINDOWS, jline.UnsupportedTerminal.class);
也可以在程序啟動的命令行里增加參數
-Djline.terminal=jline.UnsupportedTerminal
到此這篇關于在Gradle/IDEA中無法正常使用readLine的解決方法的文章就介紹到這了,更多相關idea無法正常使用readLine內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
MyBatis使用自定義TypeHandler轉換類型的實現方法
這篇文章主要介紹了MyBatis使用自定義TypeHandler轉換類型的實現方法,本文介紹使用TypeHandler 實現日期類型的轉換,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-10-10解決springboot 獲取form-data里的file文件的問題
這篇文章主要介紹了解決springboot 獲取form-data里的file文件的問題的相關資料,這里提供了詳細的解決步驟,需要的朋友可以參考下2017-07-07