Ubuntu 13.10 上的 Eclipse 错误

Ubuntu 13.10 上的 Eclipse 错误

我已成功在我的计算机上安装了 Oracle Java 64 位版本(已使用 进行检查java -version)。后来我下载了 Eclipse Kepler 64 位,但当我启动它时,它不起作用,并弹出错误信息An error has occurred. See the log file /home/nandkumar/.eclipse/org.eclipse.platform_3.8_155965261/configuration/1384713086093.log

因此我检查了日志文件,看到以下日志文​​件内容:

!SESSION Mon Nov 18 00:01:26 IST 2013 ------------------------------------------
!ENTRY org.eclipse.equinox.launcher 4 0 2013-11-18 00:01:26.132
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.InternalError: internal error: SHA-1 not available.
    at sun.security.provider.SecureRandom.init(SecureRandom.java:99)
    at sun.security.provider.SecureRandom.<init>(SecureRandom.java:78)
    at java.security.SecureRandom.getDefaultPRNG(SecureRandom.java:191)
    at java.security.SecureRandom.<init>(SecureRandom.java:155)
    at com.sun.crypto.provider.SunJCE.<clinit>(SunJCE.java:94)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at java.lang.Class.newInstance(Class.java:374)
    at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:221)
    at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206)
    at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187)
    at sun.security.jca.ProviderList.getProvider(ProviderList.java:232)
    at sun.security.jca.ProviderList$3.get(ProviderList.java:147)
    at sun.security.jca.ProviderList$3.get(ProviderList.java:142)
    at java.util.AbstractList$Itr.next(AbstractList.java:358)
    at java.security.SecureRandom.getPrngAlgorithm(SecureRandom.java:542)
    at java.security.SecureRandom.getDefaultPRNG(SecureRandom.java:187)
    at java.security.SecureRandom.<init>(SecureRandom.java:155)
    at java.io.File$TempDirectory.<clinit>(File.java:1878)
    at java.io.File.createTempFile(File.java:1987)
    at org.eclipse.equinox.launcher.Main.canWrite(Main.java:1305)
    at org.eclipse.equinox.launcher.Main.checkConfigurationLocation(Main.java:698)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1414)

请帮忙。

答案1

我不知道问题是什么,但当我使用以下方法完全删除 java(Oracle 和 Open JDK)后,问题就消失了此主题. 我再次使用以下命令安装了 Oracle java此主题

答案2

您收到的错误只是因为您的 JDK(Java Devlopment Kit)缺少 JCE(Java Cryptography Env.)功能。我认为由于美国出口管制限制,一些国家只能获得这样的“残缺”JDK。您无法使用这样的 JDK 运行 Eclipse。您可以检查一件事...在您的 JDK 安装中,查找一个文件:

/java/jdk1.7.0_40/jre/lib/security

确保它有如下一行:

security.provider.1=sun.security.provider.Sun

这会将“Sun”设置为您的加密提供商。这通常是 Sun JDK 的默认设置,但您的 JDK 中可能已将其关闭。

然后检查输出

java
javac
javaws

如果显示错误,则需要通过以下方式再次安装 Java:此方法问题肯定出在 JDK 上,因此请根据您的 Ubuntu 系统架构从官方网站下载最新的 Oracle Java 来正确安装它,然后按照步骤重新安装 eclipse,并确保已完全删除以前安装的 eclipse。

我假设你已经在主目录中的下载文件夹中下载了 eclipse kepler,

cd Downloads

如果是 64 位,则 .gz 名称与 32 位不同

tar xvf eclipse-standard-kepler-R-linux-gtk-x86_64.tar.gz
sudo mv eclipse /opt

提供您的密码,并通过

sudo ln -s /opt/eclipse/eclipse /usr/bin/eclipse

现在只需制作 eclipse.desktop

sudo gedit /usr/share/applications/eclipse.desktop

并粘贴以下几行作为 eclipse 图标

[Desktop Entry]


Name=Eclipse
Type=Application
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE
Name[en]=eclipse.desktop

Eclipse Kepler 现在可以使用了。

答案3

发现了这个:

我在 AMD64 机器(Ubuntu 12.04)上遇到了同样的问题。并通过一种解决方法解决了它:

复制:/usr/lib/jni/libswt-*3740.so 中包含“3740”的文件到 ~/.swt/lib/linux/x86_64/

但是,请确保已安装以下软件包:libswt-gtk-3-java 和 libswt-gtk-3-jni。

sudo apt-get 安装 libswt-gtk-3-jni libswt-gtk-3-java

sudo cp /usr/lib/jni/libswt-*3740.so ~/.swt/lib/linux/x86_64/

如果你有一个 32 位系统: sudo cp /usr/lib/jni/libswt-*3740.so ~/.swt/lib/linux/x86/

这里

答案4

** [ 解决方案 - 1. 错误的架构 - 2. ubuntu 上的 java] **

Eclipse 和更新的 Java 版本存在问题

相关内容