|
|
Re: about.mappins and Buckminster 3.6 [message #542493 is a reply to message #542467] |
Fri, 25 June 2010 04:59 |
|
Hi Philipp,
On 06/25/2010 01:47 AM, Philipp Nanz wrote:
> After upgrading my Buckminster / Hudson combo to 3.6, I encountered a
> bug (well, atleast I think so):
>
I doubt this is a regression. Can you verify that this used to work in earlier versions?
> I'm trying to override the new default about.mappings action, i.e. I
> wish to use my own buildFile instead of the predefined buildFileId.
>
> When I add the buildFile via alterActorProperties I get an exception
> that having both is not allowed; however I can't remove the buildFileId
> either.
>
This sounds like a bug. Can you please report it using our bugzilla? The workaround for now is to remove the action
altogether and then add it again. This should work since removes are executed before new additions are added.
HTH,
- thomas
> Trying to remove it leads to:
>
> org.eclipse.buckminster.core.common.model.ImmutablePropertyE xception:
> buildFileId
> at org.eclipse.buckminster.core.common.model.ExpandingPropertie
> s.remove(ExpandingProperties.java:391)
> at org.eclipse.buckminster.core.cspecext.model.AlterAttribute.p
> erformPropertyAlterations(AlterAttribute.java:68)
> at org.eclipse.buckminster.core.cspecext.model.AlterAction.alte
> rActorProperties(AlterAction.java:91)
> at org.eclipse.buckminster.core.cspecext.model.AlterAction.alte
> rAttribute(AlterAction.java:82)
> at org.eclipse.buckminster.core.cspecext.model.CSpecExtension.a
> lterCSpec(CSpecExtension.java:111)
> at org.eclipse.buckminster.core.cspec.AbstractResolutionBuilder
> .applyExtensions(AbstractResolutionBuilder.java:132)
> at org.eclipse.buckminster.pde.cspecgen.PDEBuilder.build(PDEBui
> lder.java:70)
> at org.eclipse.buckminster.core.ctype.AbstractComponentType.get
> Resolution(AbstractComponentType.java:316)
> at org.eclipse.buckminster.core.ctype.AbstractComponentType.get
> Resolution(AbstractComponentType.java:201)
> at org.eclipse.buckminster.core.resolver.LocalResolver.fromPath
> (LocalResolver.java:163)
> at org.eclipse.buckminster.core.resolver.LocalResolver.fromPath
> (LocalResolver.java:184)
> at org.eclipse.buckminster.core.metadata.MetadataSynchronizer.r
> efreshProject(MetadataSynchronizer.java:313)
> at org.eclipse.buckminster.core.metadata.MetadataSynchronizer$M
> etadataRefreshJob.run(MetadataSynchronizer.java:126)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
>
> Is this a feature or a bug? If it is a feature, how am I supposed to
> override the default about.mappings action??
|
|
|
|
|
|
Re: about.mappins and Buckminster 3.6 [message #543283 is a reply to message #542986] |
Mon, 28 June 2010 23:26 |
|
Hi Philipp,
I think you've misinterpreted the cspex syntax. It's an extension of the cspec and the <alterActions> is about altering
or removing existing actions, not about adding them. That's done using a normal <actions> element. Your example attempts
to first remove and then alter the same action.
Try something like this:
<actions>
<private name="about.mappings" actor="ant">
<actorProperties>
<property key="buildFile" value="build/about_mappings.ant"/>
<property key="targets" value="replace.tokens"/>
</actorProperties>
<properties>
<property key="build.id" value="${BUILD_ID} (r${SVN_REVISION})"/>
<property key="version" value="${VERSION}"/>
</properties>
<prerequisites>
<attribute alias="action.input" name="raw.about.mappings"/>
</prerequisites>
<products alias="action.output" base="${buckminster.output}/temp/">
<path path="about.mappings"/>
</products>
</private>
</actions>
<alterActions>
<remove name="about.mappings"/>
</alterActions>
The order is not significant. A remove is always executed before an add.
Regards,
Thomas Hallgren
On 06/28/2010 08:39 AM, Philipp Nanz wrote:
> Thomas Hallgren wrote on Fri, 25 June 2010 00:59
>> The workaround for now is to remove the action altogether and then add
>> it again. This should work since removes are executed before new
>> additions are added.
>
>
> Unfortunately that doesn'r work either.
>
> Using:
> <alterActions>
> <remove name="about.mappings"/>
> <private name="about.mappings" actor="ant">
> <actorProperties>
> <property key="buildFile" value="build/about_mappings.ant"/>
> <property key="targets" value="replace.tokens"/>
> </actorProperties>
> <properties>
> <property key="build.id" value="${BUILD_ID} (r${SVN_REVISION})"/>
> <property key="version" value="${VERSION}"/>
> </properties>
> <prerequisites>
> <attribute alias="action.input" name="raw.about.mappings"/>
> </prerequisites>
> <products alias="action.output" base="${buckminster.output}/temp/">
> <path path="about.mappings"/>
> </products>
> </private>
> </alterActions>
>
>
> I get Problem during meta-data refresh: CSpec net.sf.logsaw.rcp has no
> action, group, or local artifact named about.mappings
|
|
|
|
Powered by
FUDForum. Page generated in 0.05147 seconds