Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EGit » Missing dependency on JSch when installing EGit on 3.5.2
Missing dependency on JSch when installing EGit on 3.5.2 [message #524824] Fri, 02 April 2010 14:52 Go to next message
Jamie Penman-Smithson is currently offline Jamie Penman-Smithson
Messages: 6
Registered: April 2010
Junior Member
After updating to Eclipse 3.5.2 on Ubuntu lucid I'm unable to install EGit because it can't locate JSch:

Cannot complete the install because one or more required items could not be found.
  Software being installed: Eclipse JGit Feature (Incubation) 0.8.0.201003292117 (org.eclipse.jgit.feature.group 0.8.0.201003292117)
  Missing requirement: JGit Core (Incubation) 0.7.1 (org.eclipse.jgit 0.7.1) requires 'package com.jcraft.jsch [0.1.41,0.2.0)' but it could not be found
  Missing requirement: JGit Core (Incubation) 0.8.0.201003292111 (org.eclipse.jgit 0.8.0.201003292111) requires 'package com.jcraft.jsch [0.1.41,0.2.0)' but it could not be found
  Cannot satisfy dependency:
    From: Eclipse JGit Feature (Incubation) 0.8.0.201003292117 (org.eclipse.jgit.feature.group 0.8.0.201003292117)
    To: org.eclipse.jgit 0.0.0


I've checked that jsch is installed:

jamie@avior:~$ aptitude show libjsch-java
Package: libjsch-java
State: installed
Automatically installed: yes
Version: 0.1.42-1build1


and the JAR is installed:


jamie@avior:~$ ls -al /usr/share/java/jsch*
-rw-r--r-- 1 root root 208590 2009-10-19 17:38 /usr/share/java/jsch-0.1.42.jar
lrwxrwxrwx 1 root root     15 2010-04-02 13:23 /usr/share/java/jsch.jar -> jsch-0.1.42.jar


and that it's listed in the plugin registry:

com.jcraft.jsch (0.1.42) "bundleName" [Resolved]
[..]
org.eclipse.jsch.core (1.1.100.I20090430-0408) "JSch Core" [Active]
org.eclipse.jsch.ui (1.1.200.r35x_20100210-1114) "JSch UI" [Starting]


Id: com.jcraft.jsch, Version: 0.1.42, Location: reference:file:plugins/com.jcraft.jsch_0.1.42.jar


The symlink from /usr/lib/eclipse/plugins is still there:

jamie@avior:/usr/lib/eclipse/plugins$ ls -al com.jcraft.jsch_0.1.42.jar 
lrwxrwxrwx 1 root root 28 2010-04-02 13:23 com.jcraft.jsch_0.1.42.jar -> ../../../share/java/jsch.jar


I'm unsure how to debug this further.. any ideas?

Thanks,

Jamie
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #524867 is a reply to message #524824] Sat, 03 April 2010 03:39 Go to previous messageGo to next message
Robin Rosenberg is currently offline Robin Rosenberg
Messages: 317
Registered: July 2009
Senior Member
Jamie Penman-Smithson wrote:

> After updating to Eclipse 3.5.2 on Ubuntu lucid I'm unable to install EGit
> because it can't locate JSch:
>
>
> Cannot complete the install because one or more required items could not
> be found.
> Software being installed: Eclipse JGit Feature (Incubation)
> 0.8.0.201003292117 (org.eclipse.jgit.feature.group 0.8.0.201003292117)
> Missing requirement: JGit Core (Incubation) 0.7.1 (org.eclipse.jgit
> 0.7.1) requires 'package com.jcraft.jsch [0.1.41,0.2.0)' but it could
> not be found Missing requirement: JGit Core (Incubation)
> 0.8.0.201003292111 (org.eclipse.jgit 0.8.0.201003292111) requires
> 'package com.jcraft.jsch [0.1.41,0.2.0)' but it could not be found
> Cannot satisfy dependency:
> From: Eclipse JGit Feature (Incubation) 0.8.0.201003292117
> (org.eclipse.jgit.feature.group 0.8.0.201003292117) To:
> org.eclipse.jgit 0.0.0
>
>
> I've checked that jsch is installed:
>
>
> jamie@avior:~$ aptitude show libjsch-java
> Package: libjsch-java
> State: installed
> Automatically installed: yes
> Version: 0.1.42-1build1
>
>
> and the JAR is installed:
>
>
>
> jamie@avior:~$ ls -al /usr/share/java/jsch*
> -rw-r--r-- 1 root root 208590 2009-10-19 17:38
> /usr/share/java/jsch-0.1.42.jar
> lrwxrwxrwx 1 root root 15 2010-04-02 13:23 /usr/share/java/jsch.jar ->
> jsch-0.1.42.jar
>
>
> and that it's listed in the plugin registry:
>
>
> com.jcraft.jsch (0.1.42) "bundleName" [Resolved]
> [..]
> org.eclipse.jsch.core (1.1.100.I20090430-0408) "JSch Core" [Active]
> org.eclipse.jsch.ui (1.1.200.r35x_20100210-1114) "JSch UI" [Starting]

We import the JSch stuff by package and version number and your version
of the JSch bundle does not export the packages with versions, which
is the recommended OSGi practice. Versions of EGit prior to 0.7 did not
require a specific version of JSch.

$ unzip -c /usr/share/java/jsch-0.1.42.jar META-INF/MANIFEST.MF|head
Archive: /usr/share/java/jsch-0.1.42.jar
inflating: META-INF/MANIFEST.MF
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 14.0-b16 (Sun Microsystems Inc.)
Bundle-ManifestVersion: 2
Bundle-Version: 0.1.42
Export-Package: com.jcraft.jsch, com.jcraft.jsch.jce;x-internal:=true,
com.jcraft.jsch.jcraft;x-internal:=true
.....

Compare with the Eclipse packaging which has version numbers in Export-
Package.

Manifest-Version: 1.0
Bundle-ClassPath: .
Bundle-Vendor: %venderName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.4
Bundle-Name: %bundleName
Bundle-SymbolicName: com.jcraft.jsch
Created-By: 1.4.0 (Sun Microsystems Inc.)
Export-Package: com.jcraft.jsch;version="0.1.41",com.jcraft.jsch.jce;v
ersion="0.1.41";x-internal:=true,com.jcraft.jsch.jcraft;version= "0.1.
41";x-internal:=true,com.jcraft.jsch.jgss;version="0.1.41";x-internal
:=true
Bundle-Version: 0.1.41.v200903070017

You should report this with Ubuntu as they are the ones providing the
packages,

-- robin
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #527312 is a reply to message #524867] Wed, 14 April 2010 15:00 Go to previous messageGo to next message
Jamie Penman-Smithson is currently offline Jamie Penman-Smithson
Messages: 6
Registered: April 2010
Junior Member
Robin Rosenberg wrote on Sat, 03 April 2010 03:39

We import the JSch stuff by package and version number and your version
of the JSch bundle does not export the packages with versions, which
is the recommended OSGi practice. Versions of EGit prior to 0.7 did not
require a specific version of JSch.

<snip>

Compare with the Eclipse packaging which has version numbers in Export-
Package.

Manifest-Version: 1.0
Bundle-ClassPath: .
Bundle-Vendor: %venderName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.4
Bundle-Name: %bundleName
Bundle-SymbolicName: com.jcraft.jsch
Created-By: 1.4.0 (Sun Microsystems Inc.)
Export-Package: com.jcraft.jsch;version="0.1.41",com.jcraft.jsch.jce;v
ersion="0.1.41";x-internal:=true,com.jcraft.jsch.jcraft;version= "0.1.
41";x-internal:=true,com.jcraft.jsch.jgss;version="0.1.41";x-internal
:=true
Bundle-Version: 0.1.41.v200903070017

You should report this with Ubuntu as they are the ones providing the
packages,



I've attempted to work around this by repackaging the JSch JAR with a corrected Export-Package:

jamie@avior:~/Downloads/jsch/jsch-0.1.42/dist/lib$ unzip -c /usr/share/java/jsch-0.1.42.jar META-INF/MANIFEST.MF|head
Archive:  /usr/share/java/jsch-0.1.42.jar
  inflating: META-INF/MANIFEST.MF    
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 14.0-b16 (Sun Microsystems Inc.)
Bundle-ManifestVersion: 2
Bundle-Version: 0.1.42
Export-Package: com.jcraft.jsch;version="0.1.42",com.jcraft.jsch.jce;v
 ersion="0.1.42";x-internal:=true,com.jcraft.jsch.jcraft;version="0.1.
 42";x-internal:=true


However, Eclipse doesn't seem to recognise my Export-Package line and still complains that the dependency isn't fulfilled. I tried building a JAR by hand (using the tarball from JSch upstream), ensuring the manifest included an identical Export-Package attribute, with the same problem.

I'd really appreciate some pointers

Thanks again
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #529398 is a reply to message #527312] Sat, 24 April 2010 13:10 Go to previous messageGo to next message
Robin Rosenberg is currently offline Robin Rosenberg
Messages: 317
Registered: July 2009
Senior Member
Jamie Penman-Smithson wrote:

> Robin Rosenberg wrote on Sat, 03 April 2010 03:39
>> We import the JSch stuff by package and version number and your version
>> of the JSch bundle does not export the packages with versions, which
>> is the recommended OSGi practice. Versions of EGit prior to 0.7 did not
>> require a specific version of JSch.
>
> I've attempted to work around this by repackaging the JSch JAR with a
> corrected Export-Package:

For reasons of 3.4.2 compatibility we currently (again) require only 0.1.37
using require-bundle. You could try using the nightly build at:

https://build.eclipse.org/hudson/job/egit/ws/org.eclipse.egi t/updatesite/target/site/

-- robin
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #529841 is a reply to message #529398] Tue, 27 April 2010 08:55 Go to previous messageGo to next message
Jamie Penman-Smithson is currently offline Jamie Penman-Smithson
Messages: 6
Registered: April 2010
Junior Member
Robin Rosenberg wrote on Sat, 24 April 2010 13:10

For reasons of 3.4.2 compatibility we currently (again) require only 0.1.37
using require-bundle. You could try using the nightly build at:

https://build.eclipse.org/hudson/job/egit/ws/org.eclipse.egi t/updatesite/target/site/



Thanks! This solved my issues Smile
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #579506 is a reply to message #524867] Wed, 14 April 2010 15:00 Go to previous messageGo to next message
Jamie Penman-Smithson is currently offline Jamie Penman-Smithson
Messages: 6
Registered: April 2010
Junior Member
Robin Rosenberg wrote on Sat, 03 April 2010 03:39
> We import the JSch stuff by package and version number and your version
> of the JSch bundle does not export the packages with versions, which
> is the recommended OSGi practice. Versions of EGit prior to 0.7 did not
> require a specific version of JSch.
>
> <snip>
>
> Compare with the Eclipse packaging which has version numbers in Export-
> Package.
>
> Manifest-Version: 1.0
> Bundle-ClassPath: .
> Bundle-Vendor: %venderName
> Bundle-Localization: plugin
> Bundle-RequiredExecutionEnvironment: J2SE-1.4
> Bundle-Name: %bundleName
> Bundle-SymbolicName: com.jcraft.jsch
> Created-By: 1.4.0 (Sun Microsystems Inc.)
> Export-Package: com.jcraft.jsch;version="0.1.41",com.jcraft.jsch.jce;v
> ersion="0.1.41";x-internal:=true,com.jcraft.jsch.jcraft;version= "0.1.
> 41";x-internal:=true,com.jcraft.jsch.jgss;version="0.1.41";x-internal
> :=true
> Bundle-Version: 0.1.41.v200903070017
>
> You should report this with Ubuntu as they are the ones providing the
> packages,


I've attempted to work around this by repackaging the JSch JAR with a corrected Export-Package:


jamie@avior:~/Downloads/jsch/jsch-0.1.42/dist/lib$ unzip -c /usr/share/java/jsch-0.1.42.jar META-INF/MANIFEST.MF|head
Archive: /usr/share/java/jsch-0.1.42.jar
inflating: META-INF/MANIFEST.MF
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 14.0-b16 (Sun Microsystems Inc.)
Bundle-ManifestVersion: 2
Bundle-Version: 0.1.42
Export-Package: com.jcraft.jsch;version="0.1.42",com.jcraft.jsch.jce;v
ersion="0.1.42";x-internal:=true,com.jcraft.jsch.jcraft;version= "0.1.
42";x-internal:=true


However, Eclipse doesn't seem to recognise my Export-Package line and still complains that the dependency isn't fulfilled. I tried building a JAR by hand (using the tarball from JSch upstream), ensuring the manifest included an identical Export-Package attribute, with the same problem.

I'd really appreciate some pointers

Thanks again
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #579653 is a reply to message #579506] Sat, 24 April 2010 13:10 Go to previous messageGo to next message
Robin Rosenberg is currently offline Robin Rosenberg
Messages: 317
Registered: July 2009
Senior Member
Jamie Penman-Smithson wrote:

> Robin Rosenberg wrote on Sat, 03 April 2010 03:39
>> We import the JSch stuff by package and version number and your version
>> of the JSch bundle does not export the packages with versions, which
>> is the recommended OSGi practice. Versions of EGit prior to 0.7 did not
>> require a specific version of JSch.
>
> I've attempted to work around this by repackaging the JSch JAR with a
> corrected Export-Package:

For reasons of 3.4.2 compatibility we currently (again) require only 0.1.37
using require-bundle. You could try using the nightly build at:

https://build.eclipse.org/hudson/job/egit/ws/org.eclipse.egi t/updatesite/target/site/

-- robin
Re: Missing dependency on JSch when installing EGit on 3.5.2 [message #579792 is a reply to message #529398] Tue, 27 April 2010 08:55 Go to previous message
Jamie Penman-Smithson is currently offline Jamie Penman-Smithson
Messages: 6
Registered: April 2010
Junior Member
Robin Rosenberg wrote on Sat, 24 April 2010 13:10
> For reasons of 3.4.2 compatibility we currently (again) require only 0.1.37
> using require-bundle. You could try using the nightly build at:
>
> https://build.eclipse.org/hudson/job/egit/ws/org.eclipse.egi t/updatesite/target/site/


Thanks! This solved my issues :)
Previous Topic:Problem creating multiple project repository
Next Topic:Egit failing to install for Eclipse 3.4.2
Goto Forum:
  


Current Time: Sat Jul 26 11:14:00 EDT 2014

Powered by FUDForum. Page generated in 0.03462 seconds