I'm using Tycho 0.24 and Java 8 to build an Eclipse RCP application.
I've been setting the versions for dependencies in our MANIFEST.MF, feature.xml, and .product files. Once I got all of that set and compiling correctly, I started getting a new error from the packaging step of the build. I was on Tycho 0.22, but I tried
upgrading to Tycho 0.24 to see whether it was just a bug with an older version of Tycho. Same error. I've already spent a few hours investigating, but I still have no idea what the problem is. Worse, I have no idea what I changed that could have triggered
this problem.
At this stage, all of the plug-ins for my project have been compiled and installed in the local maven repository. This is just another build step that packages our RCP app for various platforms. I think that the relevant part of my pom.xml is
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.7</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
<version>${tycho-version}</version>
<executions>
<execution>
<id>materialize-products</id>
<goals>
<goal>materialize-products</goal>
</goals>
</execution>
<execution>
<id>archive-products</id>
<goals>
<goal>archive-products</goal>
</goals>
</execution>
</executions>
<configuration>
<products>
<product>
<id>com.cisco.vmmaestro.cml.rcp</id>
<archiveFileName>CML-${project.version}-${forceContextQualifier}
</archiveFileName>
</product>
</products>
</configuration>
</plugin>
Here's the error:
[INFO] Installing product com.cisco.vmmaestro.cml.rcp for environment linux/gtk/x86 to /home/jenkins/jenkins/jobs/CML_DEV_product_package_build/workspace/com.cisco.tools.cide/build/com.cisco.vmmaestro.cml.repo/target/products/com.cisco.vmmaestro.cml.rcp/linux/gtk/x86
Installing com.cisco.vmmaestro.cml.rcp 1.2.0.
Installation failed.
An error occurred while installing the items
session context was:(profile="" phase=org.eclipse.equinox.internal.p2.engine.phases.Install, operand=null --> [R]com.cisco.vmmaestro.cml.rcp.executable.gtk.linux.x86 1.2.0, action="">
The action chmod failed - file /home/jenkins/jenkins/jobs/CML_DEV_product_package_build/workspace/com.cisco.tools.cide/build/com.cisco.vmmaestro.cml.repo/target/products/com.cisco.vmmaestro.cml.rcp/linux/gtk/x86/icon.xpm does not exist
I've looked at my older builds to see that icon.xpm did used to get created somehow in that location. We've never done that step explicitly, so I assumed that it was built into some Tycho build step based on the product's icon definition for the linux
platform.
Just to resolve any questions about having the wrong path, I added our cml.xpm file to the same project as the .product file and this pom.xml file. That way, my .product file can simply say
<launcher name="CML">
<linux icon="cml.xpm"/>
But even after that change, I'm getting the same error. Running with the -X option didn't really provide any additional information about what's going on during the previous steps that should have
copied/renamed cml.xpm to the icon.xpm that Tycho cannot find.
Any suggestions about how to troubleshoot this problem?
Thanks,
---Tom
|