正如标题中指定的那样,我正在尝试通过USB将数据发送到我的ODROID-Show外部屏幕。我正在运行一个发送此类数据的shell脚本。问题是我可以通过终端运行命令,它运行成功,数据通过USB端口发送到我的小屏幕。当我尝试通过Java运行相同的命令时,没有任何事情发生。
Process proc = Runtime.getRuntime().exec("/bin/bash -c /home/ahmed/ODROID-SHOW-master/example/linux/images.sh /");
指定的命令应具有root权限才能运行。那,我已经切换到root然后运行代码,没有任何事情发生。有什么想法如何解决这个问题?
编辑:
如果您可以显示执行给定命令的代码,则以sudo为前缀,这绝对有效。
我能够以root身份运行该程序。但是,损坏的数据被发送到ODROIDscreen而不是有效的图像。当它通过终端运行时成功传输,任何想法为什么会发生这种情况?
答案 0 :(得分:1)
我会检查bash解释器执行的脚本是否需要在执行之前设置某些环境变量。
我在执行的shell脚本中添加一个调试行来转储环境,例如" env> my_dump_env.txt"然后从命令行和Java运行脚本并进行差异查看缺少的内容或不同的内容。