P2 Touchpoint chmod not working?

筅森魡賤 提交于 2019-12-05 23:54:00

In Eclipse 3.6 (don't know about previous versions), the variable to use instead of @artifact is ${artifact.location}. I had to dig into the p2 source code to find it, but using it in the targetDir parameter worked like a charm.

The import line should be org.eclipse.equinox.p2.touchpoint.eclipse.chmod (i.e. eclipse rather than natives), according to the following comment from org.eclipse.equinox.internal.p2.touchpoint.eclipse.actions.ChmodAction

// This basically a copy of the chmod action in the native touchpoint,
// only it provides @artifact support.

(For comparison, see the 'natives' chmod action)

I haven't checked about support for interpolating variables like 'os'.

A couple of things I notice:

  1. The "touchpoint.natives.chmod" action does not look like it supports @artifact. Try using org.eclipse.equinox.p2.touchpoint.eclipse.chmod instead.
  2. os does not appear to be a parameter that is replaced at install time. Also, looking at the p2 source code, if "os" was a parameter, it seems the syntax would actually be ${os}. (See ParameterizedProvisioningAction#processVariables)

Note that the $version$ and `$qualifier$' parameters mentioned on the wiki are replaced at metadata generation/publishing time, not at install time.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!