Java gksudo和logname问题

Java gksudo和logname问题,java,sudo,gksudo,Java,Sudo,Gksudo,我们有一个JavaSwing跨平台应用程序,我们将其打包到一个deb文件中,并将其安装到用户系统中。此应用程序在启动时检查并安装新版本(如果发现)。目前,为了安装新版本,我们正在使用Runtime.exec()在来自java的gnome终端中调用sudo dpkg-i XXX.deb 我已经尝试将sudo修改为gksudo,这样就不需要打开gnome终端来输入用户密码。我现在面临的问题是安装脚本无法正常工作,这意味着它无法找到logname(即当前用户的用户名,以便我们可以清理旧文件并在其主目录

我们有一个JavaSwing跨平台应用程序,我们将其打包到一个deb文件中,并将其安装到用户系统中。此应用程序在启动时检查并安装新版本(如果发现)。目前,为了安装新版本,我们正在使用
Runtime.exec()
在来自java的gnome终端中调用
sudo dpkg-i XXX.deb

我已经尝试将
sudo
修改为
gksudo
,这样就不需要打开gnome终端来输入用户密码。我现在面临的问题是安装脚本无法正常工作,这意味着它无法找到
logname
(即当前用户的用户名,以便我们可以清理旧文件并在其主目录中安装新文件),但当我对
sudo
执行相同操作时,我没有收到任何错误。他们不会让我更改脚本,因为这不是很大的增强,但我问这个问题是出于好奇,为什么
sudo
gksudo