Skip to main content



      Home
Home » Eclipse Projects » Eclipse Platform » Update Site Builder Has Hidden Cache That Causes Problems
Update Site Builder Has Hidden Cache That Causes Problems [message #283323] Thu, 31 March 2005 19:37 Go to next message
Eclipse UserFriend
Originally posted by: mrbubbabeans.austin.rr.com

I have a relatively simple project that is creating one primary feature and
three other features. The primary feature includes the other features.

I also have an update site project that builds all the features and publishes
only the primary feature.

If I generate a "build.xml" file for the primary feature, and build its update
JARs, and then export all the features and plugins to my local update site, the
JAR files of the plugins contain "fresh" contents.

However, if instead I select the "site.xml" file from the Update Site, and then
use the context menu "PDE Tools --> Build Site", it builds the same features
and plugins. The problem is that inside the plugin update JAR files, all of the
plugin runtime JARs (the JARS named in <requires> <library ... >) are built with
cached, out of date .class files.

This took me a long time to find. I tried "Project --> Clean", but it did not
change the behavior. It seems quite repeatable, and it seems to be a nasty bug.

Has anyone else seen this?

Thanks
W. C
Re: Update Site Builder Has Hidden Cache That Causes Problems [message #283641 is a reply to message #283323] Thu, 07 April 2005 16:19 Go to previous messageGo to next message
Eclipse UserFriend
Whitney and John,

The site is treated as the end point of development, and features and
plug-ins ones published are not changing. It would be bad to publish
different builds of plug-ins that have the same version. Also removing
plug-in or a feature from the workspace does not remove them from the site,
so you can add features one by one and keep already published features.
While you keep your site in the workspace, you can delete any plug-in or
feature jars from features and plug-ins directory, or delete the directories
all together.


"Whitney C." <mrbubbabeans@austin.rr.com> wrote in message
news:424C97D9.1050004@austin.rr.com...
>
> I have a relatively simple project that is creating one primary feature
and
> three other features. The primary feature includes the other features.
>
> I also have an update site project that builds all the features and
publishes
> only the primary feature.
>
> If I generate a "build.xml" file for the primary feature, and build its
update
> JARs, and then export all the features and plugins to my local update
site, the
> JAR files of the plugins contain "fresh" contents.
>
> However, if instead I select the "site.xml" file from the Update Site, and
then
> use the context menu "PDE Tools --> Build Site", it builds the same
features
> and plugins. The problem is that inside the plugin update JAR files, all
of the
> plugin runtime JARs (the JARS named in <requires> <library ... >) are
built with
> cached, out of date .class files.
>
> This took me a long time to find. I tried "Project --> Clean", but it did
not
> change the behavior. It seems quite repeatable, and it seems to be a
nasty bug.
>
> Has anyone else seen this?
>
> Thanks
> W. C
Re: Update Site Builder Has Hidden Cache That Causes Problems [message #283680 is a reply to message #283641] Fri, 08 April 2005 12:06 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: mrbubbabeans.austin.rr.com

We looked into this further. There seems to be a bug in Eclipse in how it deals
with long pathnames and long filenames on Windows. This bug is manifested, it
seems, in tools such as the PDE builders, because of the way that they store
their temporary files. We had this happen on our development machine.

Here is an example from actual code.

CONFIG:
We are using IBM Rational Software Modeler 6.0, which is based on Eclipse 3.0.
We run on Windows 2000 Professional, with all fixes and service packs applied.

The debugging in the PDE uses the "simulated normal startup" style of runtime
workspace, selected on the "Plugins" tab of the debug configuration.

The path to our workspace anchor is:
C:\u\johncook\src\rsm600\EouPde

The key folders are therefore:

Volume in drive C is IBM_PRELOAD
Volume Serial Number is 3F3F-14F0

Directory of C:\u\johncook\src\rsm600\EouPde

02/13/2005 02:44p <DIR> .
02/13/2005 02:44p <DIR> ..
03/29/2005 02:57p <DIR> configuration
03/24/2005 09:13p <DIR> features
02/09/2005 02:48p <DIR> plugins
02/13/2005 04:11p 61 .eclipseproduct
04/02/2005 02:40p <DIR> runtime-workspace

In the "simulated normal startup", the actual workspace has to have the name
"plugins", which we have. In our actual workspace, we have the following
projects ( note: we deleted all in the included binary eclipse projects for
clarity, and are just showing the source projects ).


C:\u\johncook\src\rsm600\EouPde\plugins>dir
Volume in drive C is IBM_PRELOAD
Volume Serial Number is 3F3F-14F0

Directory of C:\u\johncook\src\rsm600\EouPde\plugins

02/09/2005 02:48p <DIR> .
02/09/2005 02:48p <DIR> ..
02/09/2005 02:49p <DIR> .metadata
03/21/2005 10:07p <DIR> net.sourceforge.ant-contrib_1.0.0.b2
03/24/2005 11:09a <DIR> com.ibm.borg.ant.buildinfo.PLUGIN
03/24/2005 03:13p <DIR> com.ibm.borg.ant.buildinfo.FEATURE
02/11/2005 02:03p <DIR> bootstrap.core.PLUGIN.20050211
02/13/2005 05:57p <DIR> bootstrap.core.FEATURE.20050211
02/09/2005 04:47p <DIR> bootstrap.osfw.PLUGIN.20050211
02/21/2005 03:09p <DIR> bootstrap.osfw.FEATURE.20050211
02/22/2005 09:06p <DIR> bootstrap.osfw.antcontrib.PLUGIN.20050211
03/24/2005 10:02a <DIR> bootstrap.install.PLUGIN.20050211
03/24/2005 09:56a <DIR> bootstrap.install.FEATURE.20050211
03/27/2005 04:12p <DIR> bootstrap.osfw.oro.PLUGIN.20050211
03/28/2005 05:59p <DIR> org.apache.jakarta.oro_2.0.8
03/29/2005 10:18a <DIR> bootstrap.osfw.commons-net.PLUGIN.20050211
03/31/2005 10:41a <DIR> bootstrap.FEATURE.20050211
04/07/2005 09:56p <DIR> bootstrap.SITE

Our features and plugins have IDs. The IDs are basically the string
"com.ibm.eou.eclipse3." concatenated with the project name, and then trimmed of
the trailing PLUGIN.yyyymmdd. For example:
com.ibm.eou.eclipse3.boostrap.core
com.ibm.eou.eclipse3.boostrap.osfw.oro

The project called "bootstrap.SITE" is the project referenced in my original
post, which builds an Eclipse Update Site.

EVIDENCE:
What we found, from looking at the Eclipse 3.0 source code and from looking at
the contents of the folder C:\u\johncook\src\rsm600\EouPde\plugins\.metadata, is
that PDE builds JAR files and caches them in two or three places in the folder

C:\u\johncook\src\rsm600\EouPde\plugins\.metadata\.plugins\o rg.eclipse.pde.ui\temp

We found that something happened in the PDE that caused it to fail to clean up
the contents of the temp folder. We stopped our IDE, and tried to manually
deleted all of the contents of the temp folder. We could not delete some of the
contents, because the Windows path names were too long. This seemed to be
mostly the case when we had built Javadoc as part of a plugin. We used the
workaround specified on the Microsoft Windows 2000 knowledge base, which is
basically to rename long folder names, to complete the delete.

Since restarting RSM after deleting the temp files, the problem has not
reappeared. Building plugins, features, or the site seems to work, and the
temp folder is cleaned up. Running the PDE Export wizard also seems to work
right, now.

However, we have only run for a day or two since removing the temp files. It
will be interesting to see if the problem reappears.

Thanks to Konrad for his post -- it help focus on where to look.


Konrad Kolosowski wrote:
> Whitney and John,
>
> The site is treated as the end point of development, and features and
> plug-ins ones published are not changing. It would be bad to publish
> different builds of plug-ins that have the same version. Also removing
> plug-in or a feature from the workspace does not remove them from the site,
> so you can add features one by one and keep already published features.
> While you keep your site in the workspace, you can delete any plug-in or
> feature jars from features and plug-ins directory, or delete the directories
> all together.
>
>
Re: Update Site Builder Has Hidden Cache That Causes Problems [message #288697 is a reply to message #283641] Thu, 21 July 2005 11:45 Go to previous message
Eclipse UserFriend
I'm using Eclipse v3.1

So I'm seeing the same problem. I am trying to build a version of a
plugin and get a message 'cannot find version xxx' even when there is no
reference to that version anywhere in the workspace that I can see.

Sometimes (I haven't isolated the circumstances) it completes the build
but I seem to get old versions of the class files. Very confusing...

Any thoughts?

Steve

Konrad Kolosowski wrote:
> Whitney and John,
>
> The site is treated as the end point of development, and features and
> plug-ins ones published are not changing. It would be bad to publish
> different builds of plug-ins that have the same version. Also removing
> plug-in or a feature from the workspace does not remove them from the site,
> so you can add features one by one and keep already published features.
> While you keep your site in the workspace, you can delete any plug-in or
> feature jars from features and plug-ins directory, or delete the directories
> all together.
>
>
> "Whitney C." <mrbubbabeans@austin.rr.com> wrote in message
> news:424C97D9.1050004@austin.rr.com...
>
>>I have a relatively simple project that is creating one primary feature
>
> and
>
>>three other features. The primary feature includes the other features.
>>
>>I also have an update site project that builds all the features and
>
> publishes
>
>>only the primary feature.
>>
>>If I generate a "build.xml" file for the primary feature, and build its
>
> update
>
>>JARs, and then export all the features and plugins to my local update
>
> site, the
>
>>JAR files of the plugins contain "fresh" contents.
>>
>>However, if instead I select the "site.xml" file from the Update Site, and
>
> then
>
>>use the context menu "PDE Tools --> Build Site", it builds the same
>
> features
>
>>and plugins. The problem is that inside the plugin update JAR files, all
>
> of the
>
>>plugin runtime JARs (the JARS named in <requires> <library ... >) are
>
> built with
>
>>cached, out of date .class files.
>>
>>This took me a long time to find. I tried "Project --> Clean", but it did
>
> not
>
>>change the behavior. It seems quite repeatable, and it seems to be a
>
> nasty bug.
>
>>Has anyone else seen this?
>>
>>Thanks
>>W. C
>
>
>
Previous Topic:instanceof doesn't work in plugin
Next Topic:Eclipse counterpart to Guidance Automation Toolkit
Goto Forum:
  


Current Time: Tue Sep 23 09:09:37 EDT 2025

Powered by FUDForum. Page generated in 0.04691 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top