Linux:java通过Runtime.getRuntime().exec()执行shell,Process.waitFor()返回Required key not available(126)问题
发布时间 - 2025-06-19 00:00:00 点击率:次问题使用方法Runtime.getRuntime().exec()调用并执行脚本Process.waitFor()方法返回值是否为0来确定是否成功执行(成功为0)返回错误码126查看Process.waitFor()方法的返回值:Required key not available 操作系统错误代码126:所需的Key不可用排查
因为看到错误码对应的原因是:required key not available,所需的key不可用。查找了很多相关解决办法,发现都不太相关。
于是只能捕捉进程的输出来看是否能找到蛛丝马迹 增加代码如下:
代码语言:javascript代码运行次数:0运行复制Process proc = Runtime.getRuntime().exe代码语言:javascript代码运行次数:0运行复制c(strMakePathPath); StreamGobbler errorGobbler = new StreamGobbler(proc.getErrorStream(), "Error"); StreamGobbler outputGobbler = new StreamGobbler(proc.getInputStream(), "Output"); errorGobbler.start(); outputGobbler.start(); proc.waitFor();
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public class StreamGobbler extends Thread { InputStream is; String type; public StreamGobbler(InputStream is, String type) { this.is = is; this.type = type; } public void run() { try { InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String line = null; while ((line = br.readLine()) != null) { if (type.equals("Error")) { System.out.println("Error :" + line); } else { System.out.println("Debug:" + line); } } } catch (IOException ioe) { ioe.printStackTrace(); } }}校验输出如下error(当时忘记截图了,看红色字)
于是去看了一下两个脚本的权限,结果果然有区别,第二个脚本没有可执行权限 所以问题是否在这里呢?
解决直接权限安排
代码语言:javascript代码运行次数:0运行复制chmod 777 文件
再次执行代码,发现问题解决了
结论java通过Runtime.getRuntime().exec()执行shell,Process.waitFor()返回Required key not available(126)问题的解决办法:可以看一下文件权限是否有问题
# linux
# 操作系统
# ai
# 区别
# red
# Java
# JavaScript
# Error
# 所需
# 解决办法
# 不可用
# 返回值
# 在这里
# 看了
# 不太
# 错误码
# 第二个
# 蛛丝马迹
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives
nginx修改上传文件大小限制的方法
浅谈javascript alert和confirm的美化
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】
Swift开发中switch语句值绑定模式
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
Laravel如何为API编写文档_Laravel API文档生成与维护方法
用v-html解决Vue.js渲染中html标签不被解析的问题
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
如何确保西部建站助手FTP传输的安全性?
高端建站三要素:定制模板、企业官网与响应式设计优化
Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
如何快速搭建FTP站点实现文件共享?
如何在腾讯云免费申请建站?
Laravel如何实现全文搜索功能?(Scout和Algolia示例)
Python正则表达式进阶教程_复杂匹配与分组替换解析
JavaScript Ajax实现异步通信
如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】
如何用AWS免费套餐快速搭建高效网站?
网页设计与网站制作内容,怎样注册网站?
PHP正则匹配日期和时间(时间戳转换)的实例代码
canvas 画布在主流浏览器中的尺寸限制详细介绍
Android自定义控件实现温度旋转按钮效果
如何快速查询域名建站关键信息?
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
实现点击下箭头变上箭头来回切换的两种方法【推荐】
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
EditPlus中的正则表达式实战(6)
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
如何在建站之星绑定自定义域名?
Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】
Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案
南京网站制作费用,南京远驱官方网站?
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
微信推文制作网站有哪些,怎么做微信推文,急?
使用Dockerfile构建java web环境
Python图片处理进阶教程_Pillow滤镜与图像增强
微信小程序 wx.uploadFile无法上传解决办法
Laravel如何实现用户注册和登录?(Auth脚手架指南)
Laravel怎么实现模型属性的自动加密
Swift中循环语句中的转移语句 break 和 continue
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
如何用狗爹虚拟主机快速搭建网站?


c(strMakePathPath); StreamGobbler errorGobbler = new StreamGobbler(proc.getErrorStream(), "Error"); StreamGobbler outputGobbler = new StreamGobbler(proc.getInputStream(), "Output"); errorGobbler.start(); outputGobbler.start(); proc.waitFor();