我们曾经享受过 Windows XP 上的自我更新 Eclipse RCP 应用程序的乐趣(它是一个公司唯一的内部文档管理系统)。现在,在切换到 Windows7 后,只有当应用程序以管理员身份运行时才会执行更新,这当然会消除自更新应用程序的乐趣。
自我配置或多或少是从本文复制/粘贴
由于安装文件夹绑定到 C:\Program Files(公司策略...),因此应用程序可能不再写入此文件夹,除非作为提升的进程启动。p2 所做的(至少我认为在史诗般的调试会话之后)是从 p2 存储库下载 artifact.xml 和 content.xml 以在本地进行比较并构建更新计划。不幸的是,如果它无法存储下载的文件,它只会显示“无需更新”。
我已经尝试尝试使用共享安装/捆绑池,其中使用具有以下属性的 p2 导向器应用程序将捆绑包安装到用户目录:
-metadataRepository http://someserver/updatesite
-artifactRepository http://someserver/updatesite
-installIUs my.application.id
-roaming
-destination "C:\Program Files\MyApplication"
-bundlepool C:\Users\me\MyApplication
-profile DefaultProfile
-profileProperties org.eclipse.update.install.features=true
-p2.os win32
-p2.ws win32
-p2.arch x86_64
-Declipse.p2.data.area=C:\Users\me\.p2
安装程序运行良好,应用程序可能会启动(在告诉她启动器在我的用户目录中之后)。但不幸的是,自我配置仍然不能以这种方式工作。以管理员身份运行将导致在 -destination 位置而不是 -bundlepool 位置下载更新的包和功能 - 这是我所期望的。
我错过了什么开关?