【问题标题】:Java: How to uninstall self and exitJava:如何卸载自我并退出
【发布时间】:2011-04-12 20:39:39
【问题描述】:

是否有可供应用程序用于卸载自身并退出的 java 实用程序?我目前只在windows平台上使用可执行jar来测试这个特性;除了提供 jar 文件之外,没有也可能永远不会有花哨的安装机制。

File MYAPP = new File(".\\myapp.jar");
MYAPP.deleteOnExit();
System.exit(0);

仅在某些时候有效(删除 myapp.jar)。在 Android 环境中,只需要:

Uri packageURI = Uri.parse("package:com.co.app");
Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);      
startActivity(uninstallIntent);

我希望桌面环境也有类似的东西。

【问题讨论】:

  • 这取决于程序是如何安装的,以及在哪个环境中(Windows/Linux/Mac)。请详细说明...
  • 我目前只使用开发环境调试。在 Android 环境中,只需要:see edits to original question
  • 我认为你应该重新发布这个问题,但提供更多细节:)
  • 我最终做的是添加一个写入函数,然后运行一个删除所有关联文件的 Windows 批处理文件。

标签: java uninstallation


【解决方案1】:

我认为您必须自己编写此内容,但您可以尝试使用File.deleteOnExit,但我不确定这是否可行。这将取决于 JVM 在执行删除之前是否已卸载类路径。

还可以查看安装程序包,例如 NullsoftInstaller,它可用于为您的软件创建安装程序/卸载程序软件。

【讨论】:

  • 有时我只能让 deleteOnExit 工作,我相信卸载类路径和删除之间可能存在时间问题。我最终实际上做的是编写一个写入函数,然后运行一个具有短暂内置延迟的 Windows 批处理文件。
【解决方案2】:

很可能不会。

卸载程序通常是由创建安装程序的同一进程创建的,所以我会改为研究它。

【讨论】:

    猜你喜欢
    • 2014-01-10
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 2011-03-13
    • 2017-09-25
    • 1970-01-01
    相关资源
    最近更新 更多