我正在使用izPack 4.3.4开发java项目的图形安装程序,安装顺利但是当我尝试通过单击“程序和功能”窗口中的引用来卸载它时,它显示消息:< / p>
Error: Unable to access jarfile C:\Program Files (x86)\myproject\uninstaller\uninstaller.jar
事实是,我选择在我的程序的根安装路径中放置和重命名卸载程序,而不是在\ uninstaller目录中。请参阅XML:
<info>
...
<uninstaller name="uninstall.jar" write="yes" path="${INSTALL_PATH}" />
...
</info>
事实上,uninstall.jar文件是在C:\ Program Files(x86)\ myproject \中创建的,如果我双击它或通过“开始”菜单,它就可以工作。我认为izpacks在Windows的注册表中写错了数据,以便在“程序和功能”中引用它......但我不知道为什么......
答案 0 :(得分:1)
如果您在Windows上使用IZPack进行安装,则可以(应该)拥有RegistrySpec.xml。那家伙写了你需要的所有注册表项。 Windows会查找注册表值“UninstallString”作为要启动卸载的文件,您可能需要覆盖它。例如我的:
<pack name="UninstallStuff">
<!-- Special "pack", if not defined an uninstall key will be generated automatically -->
<value name="UninstallString"
keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$APP_NAME"
root="HKLM"
string="$INSTALL_PATH\uninstall\uninstaller.cmd"/>
<pack name="UninstallStuff">