解决在Gradle/IDEA中无法正常使用readLine的问题原因
程序员文章站
2022-03-15 19:01:09
gradle的标准输入默认并不与系统标准输入绑定,需手动设置参考: https://*.com/questions/13172137/console-application-w...
gradle的标准输入默认并不与系统标准输入绑定,需手动设置
参考: https://*.com/questions/13172137/console-application-with-java-and-gradle
问题
在gradle构建的控制台程序中,标准输入readline总是返回null
原因
gradle的标准输入默认并不与系统标准输入绑定,需手动设置
解决方法
在build.gradle.kts中添加
tasks.named<javaexec>("run") { standardinput = system.`in` }
如果需要更干净的输出,可以用
gradle console:run -q --console=plain
解决方法(groovy)
在build.gradle中添加
run { standardinput = system.in }
补充:在 idea 开发环境里使用 jline 无法正常工作的问题处理
现象:在 idea 中开发应用,使用 jline 捕获控制台输入时,无法正常运行,主要体现在如下代码在输入回车后无法执行:
consolereader reader = new consolereader();
reader.readline("> ");
解决的办法:
在使用 jline 之前,执行如下代码即可:
jline.terminalfactory.registerflavor(terminalfactory.flavor.windows, jline.unsupportedterminal.class);
也可以在程序启动的命令行里增加参数
-djline.terminal=jline.unsupportedterminal
到此这篇关于在gradle/idea中无法正常使用readline的解决方法的文章就介绍到这了,更多相关idea无法正常使用readline内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
推荐阅读
-
解决select2在bootstrap modal中不能正常使用的问题
-
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
-
解决在IE8中无法使用原生JSON的问题
-
解决在Gradle/IDEA中无法正常使用readLine的问题原因
-
使用jQuery快速解决input中placeholder值在ie中无法支持的问题_jquery
-
IDEA中springBoot项目使用JPA(hibernate)无法自动生成实体关联的数据表的解决问题
-
解决select2在bootstrap modal中不能正常使用的问题
-
微信小程序中bug的解决:页面使用flex布局在iOS9.X中无法正常渲染的解决方案
-
使用jQuery快速解决input中placeholder值在ie中无法支持的问题_jquery
-
[JAVA IDEA]在使用maven项目中,无法读取resources文件夹中的配置文件的一种解决方案