[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.platform.rcp] Re: headless builds and icons

1) The presence of the ${basedir} does imply that pde.build found your icons in the plugin. It tries to create a relative path to the bitmaps, but apparently that failed, and I see the code does not account for that failure and just leaves a bogus path. One thing I can see that would cause this would be if your workingDirectory was on a different drive than where the plugins were located.

2) ${launcherIcons} is not set by default in a headless build. It is there in case things go wrong with finding the paths, you can just set it directly in your top level build configuration build.properties file. PDE.UI sets it on export since there are some cases where headless build wouldn't be able to find the icons.

-Andrew

Erik wrote:
Hello,

I'm knee-deep in writing my headless build scripts, starting with the super-awesome RCP Quickstart article here: (http://rcpquickstart.wordpress.com/2007/06/06/getting-started-with-pde-build/). I've managed to replace most of the hard-coded paths in the build.xml and build.properties files with environment variables, but have run into a problem with the icons. I'm now getting a similar error to the one described in an older thread: http://dev.eclipse.org/newslists/news.eclipse.platform.rcp/msg26029.html. What it looks like is happening is that the assemble*.xml file is concatenating two sets of path strings when it builds the icon paths. My product file looks like this:

        <bmp
           winSmallHigh="/plugin.name/icons/bmp_16h.bmp"
           winSmallLow="/plugin.name/icons/bmp_16.bmp"
           winMediumHigh="/plugin.name/icons/bmp_32h.bmp"
           winMediumLow="/plugin.name/icons/bmp_32.bmp"
           winLargeHigh="/plugin.name/icons/bmp_48h.bmp"
           winLargeLow="/plugin.name/icons/bmp_48.bmp"/>

But the assemble*.xml file has cobbled together this:

<eclipse.brand root="${eclipse.base}/win32.win32.x86/${collectingFolder}" icons="${launcherIcons}, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_16h.bmp, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_16.bmp, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_32h.bmp, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_32.bmp, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_48h.bmp, ${basedir}/C:\path\to\build\plugins\plugin.name\icons\bmp_48.bmp" name="${launcherName}" os="${os}" />

And so when the build is run, I get:

[eclipse.brand] Error - 7 icon(s) not replaced in C:\path\to\build\tmp\plugin.name\win32.win32.x86\plugin.name\launcher.exe using C:\path\to\build/C:\path\to\build\plugins\build.name\icons\bmp_16h.bmp

----
I guess I have a couple questions:

1. Why is the assemble*.xml generating this extra "/C:\path\to\build" after the ${basedir}?

2. Where is ${launcherIcons} defined?


Thanks!

Erik