使用官方安装程序安装 Netbeans 12.0 时出错
Error on installing Netbeans 12.0 using the official installer
问题描述:
我正在尝试使用官方 Netbeans 安装程序在 Debian“Buster”上安装 Netbeans 12.0。虽然发生以下异常:
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
也许您知道上述问题的解决方案?
感谢您的宝贵时间!
注意: 我知道我可以将 Netbeans 12.0 作为 snap 包安装,但我对此不感兴趣。
已执行的步骤:
1) 在终端中,我以 root 用户身份登录:
$ su
Password: ***
2) 我安装了包 openjdk-11-jdk:
$ apt install default-jdk
3)然后我查看了java版本:
$ java --version
openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
4)我把官方文档(Downloading Apache NetBeans 12.0)指定的三个文件下载到"~/Downloads"文件夹:
- 安装程序文件(“Apache-NetBeans-12.0-bin-linux-x64.sh”)来自提供的mirror site;
- PGP ASC文件("Apache-NetBeans-12.0-bin-linux-x64.sh.asc");
- KEYS 文件。
5) 我导航到 “下载” 文件夹:
$ cd Downloads
6) 我在 Netbeans 安装程序文件上设置了 执行 权限:
$ chmod +x Apache-NetBeans-12.0-bin-linux-x64.sh
7) 因为 Netbeans 文档指定了这一点:
Officially, it is important that you verify the integrity of the
downloaded files using the PGP signatures (.asc file) [...]. The PGP
signatures should be matched against the KEYS file which contains
the PGP keys used to sign this release.
我按照他们在 link 中提供的两个步骤(使用 gpg 的步骤)来验证安装程序的完整性:
7.a) 正在导入 KEYS 文件:
$ gpg --import KEYS
gpg: Schlüssel B4C1940FEA9364F1: "Jan Lahoda (Key for signing Apache NetBeans & co. releases.) <jlahoda@apache.org>" nicht geändert
gpg: Schlüssel 13E9F7AE3A4FD551: "geertjan@apache.org (Key for signing Apache NetBeans & co. releases.) <geertjan@apache.org>" nicht geändert
gpg: Schlüssel CF7BA0AB1CCF4647: "Emilian Marius Bold <emi@apache.org>" nicht geändert
gpg: Schlüssel B2BF814FA145CB2D: "Laszlo Kishalmi (CODE SIGNING KEY) <lkishalmi@apache.org>" nicht geändert
gpg: Schlüssel 4A2601CEDA9382F3: "Eric Barboni (Signing Key) <skygo@apache.org>" nicht geändert
gpg: Schlüssel 3703AC389A12A9D4: "Neil C Smith <neilcsmith@apache.org>" nicht geändert
gpg: Schlüssel 57D5896CD86C1320: "Reema Taneja (Code Signing Key) <rtaneja@apache.org>" nicht geändert
gpg: Schlüssel E860B148D27236F9: "Jaroslav Tulach (Key for signing Apache NetBeans & co. releases.) <jtulach@apache.org>" nicht geändert
gpg: Schlüssel 6FA863B0C32A18B1: Öffentlicher Schlüssel "Arunava Sinha (CODE SIGNING KEY) <arusinha@apache.org>" importiert
gpg: Schlüssel 3ED477750C09D18D: Öffentlicher Schlüssel "John McDonnell (CODE SIGNING KEY) <johnmcdonnell@apache.org>" importiert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 10
gpg: importiert: 2
gpg: unverändert: 8
7.b) 验证签名:
$ gpg --verify Apache-NetBeans-12.0-bin-linux-x64.sh.asc
gpg: die unterzeichneten Daten sind wohl in 'Apache-NetBeans-12.0-bin-linux-x64.sh'
gpg: Signatur vom Di 09 Jun 2020 17:50:58 CEST
gpg: mittels RSA-Schlüssel 8FE1C26F15E0320E740BAED84A2601CEDA9382F3
gpg: Aussteller "skygo@apache.org"
gpg: Korrekte Signatur von "Eric Barboni (Signing Key) <skygo@apache.org>" [unbekannt]
gpg: WARNUNG: Dieser Schlüssel trägt keine vertrauenswürdige Signatur!
gpg: Es gibt keinen Hinweis, daß die Signatur wirklich dem vorgeblichen Besitzer gehört.
Haupt-Fingerabdruck = 8FE1 C26F 15E0 320E 740B AED8 4A26 01CE DA93 82F3
8)最后我执行了安装程序:
$ sh Apache-NetBeans-12.0-bin-linux-x64.sh
Configuring the installer...
Searching for JVM on the system...
Extracting installation data...
Running the installer wizard...
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
我也尝试使用 "bash" 命令:
$ bash Apache-NetBeans-12.0-bin-linux-x64.sh
和 "./":
$ ./Apache-NetBeans-12.0-bin-linux-x64.sh
不幸的是,每次的结果都是一样的:
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
更新:
@Kryštof Vosyka 给出了可行的解决方案:以当前用户身份安装 Netbeans 12.0, 而不是 作为 root 用户。
为了应用他的解决方案,除了步骤 6(设置 execute Netbeans 安装程序文件的权限)。
我遇到了同样的问题,解决方法很简单:
不要以 root 身份启动安装。
安装程序是图形化的,root 用户无法为您的用户真正打开 windows,因此失败。
但是不知道如何为所有用户安装它。
问题描述:
我正在尝试使用官方 Netbeans 安装程序在 Debian“Buster”上安装 Netbeans 12.0。虽然发生以下异常:
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
也许您知道上述问题的解决方案?
感谢您的宝贵时间!
注意: 我知道我可以将 Netbeans 12.0 作为 snap 包安装,但我对此不感兴趣。
已执行的步骤:
1) 在终端中,我以 root 用户身份登录:
$ su
Password: ***
2) 我安装了包 openjdk-11-jdk:
$ apt install default-jdk
3)然后我查看了java版本:
$ java --version
openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
4)我把官方文档(Downloading Apache NetBeans 12.0)指定的三个文件下载到"~/Downloads"文件夹:
- 安装程序文件(“Apache-NetBeans-12.0-bin-linux-x64.sh”)来自提供的mirror site;
- PGP ASC文件("Apache-NetBeans-12.0-bin-linux-x64.sh.asc");
- KEYS 文件。
5) 我导航到 “下载” 文件夹:
$ cd Downloads
6) 我在 Netbeans 安装程序文件上设置了 执行 权限:
$ chmod +x Apache-NetBeans-12.0-bin-linux-x64.sh
7) 因为 Netbeans 文档指定了这一点:
Officially, it is important that you verify the integrity of the downloaded files using the PGP signatures (.asc file) [...]. The PGP signatures should be matched against the KEYS file which contains the PGP keys used to sign this release.
我按照他们在 link 中提供的两个步骤(使用 gpg 的步骤)来验证安装程序的完整性:
7.a) 正在导入 KEYS 文件:
$ gpg --import KEYS
gpg: Schlüssel B4C1940FEA9364F1: "Jan Lahoda (Key for signing Apache NetBeans & co. releases.) <jlahoda@apache.org>" nicht geändert
gpg: Schlüssel 13E9F7AE3A4FD551: "geertjan@apache.org (Key for signing Apache NetBeans & co. releases.) <geertjan@apache.org>" nicht geändert
gpg: Schlüssel CF7BA0AB1CCF4647: "Emilian Marius Bold <emi@apache.org>" nicht geändert
gpg: Schlüssel B2BF814FA145CB2D: "Laszlo Kishalmi (CODE SIGNING KEY) <lkishalmi@apache.org>" nicht geändert
gpg: Schlüssel 4A2601CEDA9382F3: "Eric Barboni (Signing Key) <skygo@apache.org>" nicht geändert
gpg: Schlüssel 3703AC389A12A9D4: "Neil C Smith <neilcsmith@apache.org>" nicht geändert
gpg: Schlüssel 57D5896CD86C1320: "Reema Taneja (Code Signing Key) <rtaneja@apache.org>" nicht geändert
gpg: Schlüssel E860B148D27236F9: "Jaroslav Tulach (Key for signing Apache NetBeans & co. releases.) <jtulach@apache.org>" nicht geändert
gpg: Schlüssel 6FA863B0C32A18B1: Öffentlicher Schlüssel "Arunava Sinha (CODE SIGNING KEY) <arusinha@apache.org>" importiert
gpg: Schlüssel 3ED477750C09D18D: Öffentlicher Schlüssel "John McDonnell (CODE SIGNING KEY) <johnmcdonnell@apache.org>" importiert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 10
gpg: importiert: 2
gpg: unverändert: 8
7.b) 验证签名:
$ gpg --verify Apache-NetBeans-12.0-bin-linux-x64.sh.asc
gpg: die unterzeichneten Daten sind wohl in 'Apache-NetBeans-12.0-bin-linux-x64.sh'
gpg: Signatur vom Di 09 Jun 2020 17:50:58 CEST
gpg: mittels RSA-Schlüssel 8FE1C26F15E0320E740BAED84A2601CEDA9382F3
gpg: Aussteller "skygo@apache.org"
gpg: Korrekte Signatur von "Eric Barboni (Signing Key) <skygo@apache.org>" [unbekannt]
gpg: WARNUNG: Dieser Schlüssel trägt keine vertrauenswürdige Signatur!
gpg: Es gibt keinen Hinweis, daß die Signatur wirklich dem vorgeblichen Besitzer gehört.
Haupt-Fingerabdruck = 8FE1 C26F 15E0 320E 740B AED8 4A26 01CE DA93 82F3
8)最后我执行了安装程序:
$ sh Apache-NetBeans-12.0-bin-linux-x64.sh
Configuring the installer...
Searching for JVM on the system...
Extracting installation data...
Running the installer wizard...
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
我也尝试使用 "bash" 命令:
$ bash Apache-NetBeans-12.0-bin-linux-x64.sh
和 "./":
$ ./Apache-NetBeans-12.0-bin-linux-x64.sh
不幸的是,每次的结果都是一样的:
No protocol specified
Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread "main"
更新:
@Kryštof Vosyka 给出了可行的解决方案:以当前用户身份安装 Netbeans 12.0, 而不是 作为 root 用户。
为了应用他的解决方案,除了步骤 6(设置 execute Netbeans 安装程序文件的权限)。
我遇到了同样的问题,解决方法很简单:
不要以 root 身份启动安装。
安装程序是图形化的,root 用户无法为您的用户真正打开 windows,因此失败。 但是不知道如何为所有用户安装它。