Unity Launcher Icon 启动了一个不是从它创建的程序的旧版本

Kpa*_*hka 2 icons unity launcher

背景:

有一个新的应用程序 XXX,它以 zip 文件的形式分发。我创建了一个目录~/programs/XXX,将 zip 文件存储在其中并解压缩。现在我得到了一个目录,~/programs/XXX/XXXv.1并在其中编写了 xxx 和其他程序。

我制作了 xxx 可执行文件,在文件管理器中双击它。启动器中出现一个新图标,程序 xxx 启动。退出程序后,图标留在启动器中。我能够从图标重新启动程序。

几天后发布了一个新版本的应用程序xxx,得到了zip,解压缩,得到了目录~/programs/XXX/XXXv.1.1,在里面有程序xxx等。

我从启动器中删除了图标(到programm xxx v.1),~/programs/XXX/XXXv.1.1/xxx从文件管理器启动,启动器中再次出现图标,新版本启动。退出程序并从启动器中的图标重新启动后,我注意到创建的图标启动了旧版本的程序,尽管该图标是通过从新版本目录启动程序 xxx 创建的。

题:

如何使启动器图标指向新版本目录中的程序,从那里创建图标?

进一步的调查:

在旧版本目录中重命名程序名称后,新创建的图标无法启动程序。所以实际上新版本的程序新创建的图标指向旧版本的程序。

必须有一个隐藏的配置文件,其中包含指向旧可执行文件的指针,当删除旧版本的图标时,该文件不会被删除。

当新版本的程序启动时,会创建一个新版本的图标,启动新版本的程序,但是当从图标重新启动时,启动旧版本的程序。

启动器图标的隐藏配置文件是什么以及如何更改它指向的程序文件?

Jac*_*ijm 6

首先,修复它!

  1. 打开~/.local/share/applicationsnautilus。该目录~/.local是您个人文件夹中的隐藏目录。按Ctrl+ H(在 nautilus 中)使其可见。
  2. 查找应用程序的启动器,将其删除。
  3. 打开应用程序的新版本,将其锁定到启动器。

你完成了。

解释; 发生了什么

  1. 您启动了应用程序的第一个版本,并将其锁定到启动器。这使得Unity 在 中创建一个启动器~/.local/share/applications,或者在某些情况下,应用程序在第一次运行时创建一个启动器。
  2. 您安装了一个新版本并运行了它。然而,没有创建新版本的启动器,因为您的应用程序或 Unity 注意到启动器似乎已经存在。然而,这个现有的启动器指向旧版本。

因此问题。