[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [p2-dev] how to make p2 install fail gracefully

Here's what I have so far:

1. Unzip your favorite Eclipse distro of 3.6.1 (I used
eclipse-SDK-3.6.1-macosx-cocoa-x86_64.tar.gz)
2. chmod -R 555 eclipse (or the appropriate variant on windows)
3. Start eclipse
4. open update manager
5. Add update site
http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.6/
6. Try to install.

I get the error below.  It doesn't say anywhere (or at least it's not
saying it to me) that this is failing because of a read-only problem.

Now, some users are able to "successfully" install, but on restart it
looks like JDT has been uninstalled (specifically, the
org.eclipse.jdt.core line has been deleted from the bundles.info
file).   Perhaps this is a windows-only problem.  I haven't been able
to track it down exactly yet.

Cannot complete the install because of a conflicting dependency.
  Software being installed: Groovy-Eclipse Feature
2.1.1.xx-20101124-2100-e36
(org.codehaus.groovy.eclipse.feature.feature.group
2.1.1.xx-20101124-2100-e36)
  Software currently installed: Shared profile 1.0.0.1284044844810
(SharedProfile_SDKProfile 1.0.0.1284044844810)
  Only one of the following can be installed at once:
    Java Development Tools Core 3.6.1.xx-20101124-2100-e36
(org.eclipse.jdt.core 3.6.1.xx-20101124-2100-e36)
    Java Development Tools Core 3.6.1.v_A68_R36x (org.eclipse.jdt.core
3.6.1.v_A68_R36x)
  Cannot satisfy dependency:
    From: Shared profile 1.0.0.1284044844810 (SharedProfile_SDKProfile
1.0.0.1284044844810)
    To: org.eclipse.jdt.core [3.6.1.v_A68_R36x]
  Cannot satisfy dependency:
    From: Shared profile 1.0.0.1284044844810 (SharedProfile_SDKProfile
1.0.0.1284044844810)
    To: org.eclipse.jdt.feature.group
[3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH]
  Cannot satisfy dependency:
    From: Groovy-Eclipse Feature 2.1.1.xx-20101124-2100-e36
(org.codehaus.groovy.eclipse.feature.feature.group
2.1.1.xx-20101124-2100-e36)
    To: org.codehaus.groovy.jdt.patch.feature.group [2.1.1.xx-20101124-2100-e36]
  Cannot satisfy dependency:
    From Patch: org.codehaus.groovy.jdt.patch.feature.group
2.1.1.xx-20101124-2100-e36 Eclipse Java Development Tools
3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH
(org.eclipse.jdt.feature.group
3.6.1.r361_v20100714-0800-7z8XFUSFLFlmgLc5z-Bvrt8-HVkH)
    To: org.eclipse.jdt.core [3.6.1.xx-20101124-2100-e36]

On Tue, Dec 7, 2010 at 2:03 PM, Andrew Eisenberg <andrew@xxxxxxxxxxxx> wrote:
> I believe that this is a problem with feature patches specifically.  I
> was aware of the shared install bug that was fixed for 3.6.1, but it
> doesn't seem to have fixed the feature patches issue (it only made
> diagnosing the problem more cryptic :( ).  I have not actually
> reproduced this on my machine.  I just know from users that when they
> changed their install directory to writable, then they were able to
> install groovy-eclipse.
>
> If there's not a straightforward solution, then should I write up some
> steps to reproduce and raise a bug?
>
> On Tue, Dec 7, 2010 at 9:56 AM, Ian Bull <irbull@xxxxxxxxxxxxxxxxx> wrote:
>> Andrew,
>> This should work (install in a read-only directory). In this case, Eclipse
>> actually does the install ~<username>/.eclipse.  Of course, if that is also
>> read-only, then we are probably out of luck.
>> There was a bug in 3.6.0 that caused some problems, but that was fixed in
>> 3.6.1.
>> So a few questions, are you using 3.6.1? If you are using 3.6.1, are the
>> results predictable (or do you get different behavior  based on the weather
>> ;)?  I wonder if there is a problem with feature-patches and shared
>> installs.
>> cheers,
>> ian
>>
>> On Tue, Dec 7, 2010 at 8:45 AM, Andrew Eisenberg <andrew@xxxxxxxxxxxx>
>> wrote:
>>>
>>> Hi all,
>>>
>>> Is there some way that I can force a p2 install to fail gracefully
>>> when there is an attempt to use the update manager to install some
>>> features in a read-only directory?
>>>
>>> Longer explanation:
>>>
>>> Groovy-Eclipse installs with a feature patch for jdt.core.  When the
>>> install directory is read-only, the installation fails, but in
>>> unpredictable ways.  Sometimes the installation itself is
>>> "successful", but the features fail to load on restart (and worse,
>>> sometimes this causes JDT to fail to load).
>>>
>>> So, I would like p2 to generate an error message and abort the
>>> installation if it detects that the install directory is read only.
>>>
>>> Of course, I'd prefer to be able to successfully install even when
>>> read-only, but my thinking is that the graceful failure is an easier
>>> option.
>>>
>>> thanks,
>>> --a
>>> _______________________________________________
>>> p2-dev mailing list
>>> p2-dev@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/p2-dev
>>
>>
>>
>> --
>> R. Ian Bull | EclipseSource Victoria | +1 250 477 7484
>> http://eclipsesource.com | http://twitter.com/eclipsesource
>>
>