Problem with importtargetdefinition [message #643832] |
Wed, 08 December 2010 08:10  |
Eclipse User |
|
|
|
Hi!
I have a very strange problem with "importtargetdefinition".
I used to import a target definition - which always worked fine:
importtargetdefinition -A /home/apdev/ci/temp/ap_branch/KIAS_Branch.target
The target-definition file looks like this:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.6"?>
<target name="KIAS_Test">
<locations>
<location includeAllPlatforms="false" includeMode="planner" type="InstallableUnit">
<unit id="bla.bla.feature.feature.group" version="2.6.1.2010-11-16"/>
[..cut..]
<unit id="bla2.bla2.feature.feature.group" version="2.2.0"/>
<repository location="http://10.186.97.22/webApps/UpdateSite_RC_KIAS/"/>
</location>
</locations>
<environment>
<os>win32</os>
<ws>win32</ws>
<arch>x86</arch>
</environment>
</target>
So the UpdateSite is located on a webserver in directory "UpdateSite_RC_KIAS".
But since this week the import fails with the following exception:
apdev@apbuilder:~/hudson/jobs/AP Prod/workspace$ sudo /usr/lib/jvm/jdk1.5.0_22/bin/java "-Dbuckminster.output.root=/home/apdev/hudson/jobs/AP Prod/workspace/buckminster.output" "-Dbuckminster.temp.root=/home/apdev/hudson/jobs/AP Prod/workspace/buckminster.temp" -Xmx768m "-Dhudson.workspace=/home/apdev/hudson/jobs/AP Prod/workspace/" -jar /home/apdev/ci/buckminster/plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar -application org.eclipse.buckminster.cmdline.headless -data /home/apdev/ci/buckminster/ap_branch --loglevel debug --displaystacktrace -S "/home/apdev/hudson/jobs/AP Prod/workspace/commands.txt"
importtargetdefinition '-A' '/home/apdev/ci/temp/ap_branch/KIAS_Branch.target'
Doing full workspace refresh
Waiting for jobs to end
org.eclipse.core.runtime.CoreException: Unable to load all units for Software Site container of target /home/apdev/ci/temp/ap_branch/KIAS_Branch.target
at org.eclipse.buckminster.pde.commands.ImportTargetDefinition.verifyIUBundleContainer(ImportTargetDefinition.java:200)
at org.eclipse.buckminster.pde.commands.ImportTargetDefinition.internalRun(ImportTargetDefinition.java:139)
at org.eclipse.buckminster.core.commands.WorkspaceCommand.run(WorkspaceCommand.java:91)
at org.eclipse.buckminster.cmdline.AbstractCommand.basicRun(AbstractCommand.java:194)
at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:317)
at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:136)
at org.eclipse.buckminster.cmdline.Headless.start(Headless.java:156)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
Contains: Unable to locate installable unit bla.bla.feature.feature.group
Unable to load all units for Software Site container of target /home/apdev/ci/temp/ap_branch/KIAS_Branch.target
[0]Unable to locate installable unit bla.bla.feature.feature.group
apdev@apbuilder:~/hudson/jobs/AP Prod/workspace$
The UpdateSite has not chanced since mid-november.
Analyzing this weird problem I found a workaroud: I just copied the UpdateSite to a new directory on the webserver, naming it "UpdateSite_RC_KIAS2". It's merely a 1:1 copy. Then I adjusted the repository-location in the definition-file to point to this copy. importtargetdefinition works like intended.
Next I deleted the (bad) "UpdateSite_RC_KIAS" and renamed the (good) "UpdateSite_RC_KIAS2" by removing the "2". The exception reoccurred.
It seems this problem depends on the filename. But how can this be? Any hints?
Also the debug-information buckminster gives me is not very helpful. Is there a way to get more verbose logging? Why is it "Unable to locate installable unit"? There is no reason given.
Thanks for any help.
|
|
|
|
Re: Problem with importtargetdefinition [message #661303 is a reply to message #661286] |
Thu, 24 March 2011 02:06   |
Eclipse User |
|
|
|
Sounds like the p2 cache in your workspace got corrupted somehow. Do you
get the same problem when materializing into a clean workspace?
- thomas
On 2011-03-23 23:08, Zoltán Ujhelyi wrote:
> I've successfully reproduced the same thing. I have two update sites in
> the target platform, one created by B3 (basically a filtered local copy
> of the Helios update site) and one created by Buckminster (with perform
> site.p2).
>
> In case of the latter site I got exactly the same exception stating,
> that a selected feature is not found.
>
> Contains: Unable to locate installable unit
> org.eclipse.viatra2.visualisation.feature.feature.group
> Unable to load all units for Software Site container of target
> ../buckminster36/base-local-viatra.target
> [0]Unable to locate installable unit
> org.eclipse.viatra2.visualisation.feature.feature.group
>
> However, using buckminster listsite on the repository the feature is there:
> Features:
> org.eclipse.viatra2.core.feature (VIATRA2 R3 Model Transformation
> Framework Core Components)
> org.eclipse.viatra2.core.source.feature (Source for VIATRA2 R3 Model
> Transformation Framework Core Components)
> org.eclipse.viatra2.visualisation.feature (Viatra Visualisation Feature)
> org.eclipse.viatra2.visualisation.source.feature (Source for Viatra
> Visualisation Feature)
>
> Even better, if I try to use the exact same target definition (shared
> via SVN) in the IDE, I can import all targets, and set it as a target
> platform as well.
>
> Does anyone have a slight idea, how to avoid this problem?
>
> Thanks in advance,
> Zoltán Ujhelyi
|
|
|
|
|
Re: Problem with importtargetdefinition [message #661381 is a reply to message #661317] |
Thu, 24 March 2011 09:25  |
Eclipse User |
|
|
|
Thanks for the tips. The problem was indeed related to the version constraints. As the second site was updated continously, the build numbers (date) changed at the end of the repository, however the target platform referenced that as well.
I changed our builds to build these features using a cquery+rmap combination, where I could specify rules to overcome this challenge.
Thank you again,
Zoltán
|
|
|
Powered by
FUDForum. Page generated in 0.03576 seconds