dbeaver: Can't install SSHJ: installation fails with dependency error on org.bouncycastle.bcpkix

This is a follow-up of https://github.com/dbeaver/dbeaver/issues/9989#issuecomment-824908370 . I want to connect to a PostgreSQL db through a SSH tunnel, but connection fails with default implementation JSch with error process hasn't exited (see https://github.com/dbeaver/dbeaver/issues/9989), so I’m following the suggestion from multiple commenters at https://github.com/dbeaver/dbeaver/issues/9989 to switch to SSHJ (instead of the default JSch).

Sadly, I’m unable to follow this advice to switch to SSHJ, because I’m unable to install it. When I try to install it (from Install New SoftwareDBeaver SSHJ extension - https://dbeaver.io/update/sshj/latest/Next), installation fails with:

Cannot complete the install because one or more required items could not be found.
  Software being installed: DBeaver SSHJ 1.0.76.202104181339 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.76.202104181339)
  Missing requirement: SSHv2 library for Java 0.27.3 (org.jkiss.bundle.sshj 0.27.3) requires 'osgi.bundle; org.bouncycastle.bcpkix 0.0.0' but it could not be found
  Cannot satisfy dependency:
    From: DBeaver SSH implementation (SSHJ) 1.0.76.202104181339 (org.jkiss.dbeaver.net.ssh.sshj 1.0.76.202104181339)
    To: osgi.bundle; org.jkiss.bundle.sshj 0.0.0
  Cannot satisfy dependency:
    From: DBeaver SSHJ 1.0.76.202104181339 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.76.202104181339)
    To: org.eclipse.equinox.p2.iu; org.jkiss.dbeaver.net.ssh.sshj [1.0.76.202104181339,1.0.76.202104181339]

Am I missing something?

System information

  • Ubuntu 20.10, fully up-to-date
  • DBeaver 21.0.3.202104181339 (latest as of today, installed from the official deb package)
  • Zero additional extensions

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 19 (2 by maintainers)

Commits related to this issue

Most upvoted comments

Still having this issue with dbeaver Version 21.2.2.202110030714 and Ubuntu 20.04.

I’m having the same problem on 21.2.4. Same error, the thing is, my initial issue is #7424.

Can't initialize tunnel
   Unable to initialize SSH agent

I’ve read that JSCh doesn’t work, recommended SSHJ, now I’m stuck. lol

@femosso, we don’t distribute it as an extension anymore, that’s why this link is not working. This dependency is included in DBeaver.

For those who are having errors configuring the bastion host: If a DNS is used instead of the IP of the bastion host, the SSH connection works.

Same here. I wanted to use SSH tunneling but encountered an error. I found that I had to install SSHJ, but got another error while installing it (dependency error on org.bouncycastle.bcpkix) …

Linux Pop!_OS 22.04
Kernel 5.17.5-76051705-generic

error still present

Cannot complete the install because one or more required items could not be found.
  Software being installed: DBeaver SSHJ 1.0.88.202110151816 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.88.202110151816)
  Missing requirement: Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs 1.69.0.v20210713-1924 (org.bouncycastle.bcpkix 1.69.0.v20210713-1924) requires 'java.package; org.bouncycastle.asn1.bsi [1.69.0,1.70.0)' but it could not be found
  Cannot satisfy dependency:
    From: SSHv2 library for Java 0.27.4 (org.jkiss.bundle.sshj 0.27.4)
    To: osgi.bundle; org.bouncycastle.bcpkix 0.0.0
  Cannot satisfy dependency:
    From: DBeaver SSH implementation (SSHJ) 1.0.88.202110151816 (org.jkiss.dbeaver.net.ssh.sshj 1.0.88.202110151816)
    To: osgi.bundle; org.jkiss.bundle.sshj 0.0.0
  Cannot satisfy dependency:
    From: DBeaver SSHJ 1.0.88.202110151816 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.88.202110151816)
    To: org.eclipse.equinox.p2.iu; org.jkiss.dbeaver.net.ssh.sshj [1.0.88.202110151816,1.0.88.202110151816]

I found that SSHJ is already included in the latest DBeaver (no idea in which version they’ve added it), so there’s no need to install it separately.

In Connection settings, in SSH tab after checking Use SSH Tunnel, expand Advanced settings and choose SSHJ from Implementation selection.

@JRRSMVF it works for me now. Please create a new bug with your error & version details

Same problem in Version 21.2.2.202110082155 on Arch Linux:

Cannot complete the install because one or more required items could not be found. Software being installed: DBeaver SSHJ 1.0.88.202110151816 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.88.202110151816) Missing requirement: Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs 1.69.0.v20210713-1924 (org.bouncycastle.bcpkix 1.69.0.v20210713-1924) requires ‘java.package; org.bouncycastle.asn1.bsi [1.69.0,1.70.0)’ but it could not be found Cannot satisfy dependency: From: DBeaver SSHJ 1.0.88.202110151816 (org.jkiss.dbeaver.net.sshj.feature.feature.group 1.0.88.202110151816) To: org.eclipse.equinox.p2.iu; org.bouncycastle.bcpkix [1.69.0.v20210713-1924,1.69.0.v20210713-1924]

On Arch Linux it’s also possible to install the plugin from the community repo: https://archlinux.org/packages/community/any/dbeaver-plugin-sshj/. It fails with a different error:

Missing implementation of resolved method ‘abstract void setupTunnel(org.jkiss.dbeaver.model.runtime.DBRProgressMonitor, org.jkiss.dbeaver.model.net.DBWHandlerConfiguration, org.jkiss.dbeaver.model.net.ssh.config.SSHHostConfiguration[], org.jkiss.dbeaver.model.net.ssh.config.SSHPortForwardConfiguration)’ of abstract class org.jkiss.dbeaver.model.net.ssh.SSHImplementationAbstract.