2017-04-24 142 views
3

我试图在Ubuntu 16.04上安装sbt。运行时,下面的命令,dpkg:错误处理包oracle-java8-installer(--configure):

sudo apt-get install sbt 

现在,当我尝试重新安装,我得到下面的错误,

Downloading Oracle Java 8... 
--2017-04-24 17:34:33-- http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz 
Resolving download.oracle.com (download.oracle.com)... 104.80.89.58, 104.80.89.16 
Connecting to download.oracle.com (download.oracle.com)|104.80.89.58|:80... connected. 
HTTP request sent, awaiting response... 302 Moved Temporarily 
Location: https://edelivery.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz [following] 
--2017-04-24 17:34:35-- https://edelivery.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz 
Resolving edelivery.oracle.com (edelivery.oracle.com)... 23.200.209.153, 2600:1409:a:183::2d3e, 2600:1409:a:193::2d3e 
Connecting to edelivery.oracle.com (edelivery.oracle.com)|23.200.209.153|:443... connected. 
HTTP request sent, awaiting response... 302 Moved Temporarily 
Location: http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz?AuthParam=1493035597_d0396e6a99df9ccfeb3f6d895673df09 [following] 
--2017-04-24 17:34:37-- http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz?AuthParam=1493035597_d0396e6a99df9ccfeb3f6d895673df09 
Connecting to download.oracle.com (download.oracle.com)|104.80.89.58|:80... connected. 
HTTP request sent, awaiting response... 416 Requested Range Not Satisfiable 

    The file is already fully retrieved; nothing to do. 

Download done. 
Removing outdated cached downloads... 
sha256sum mismatch jdk-8u131-linux-x64.tar.gz 
Oracle JDK 8 is NOT installed. 
dpkg: error processing package oracle-java8-installer (--configure): 
subprocess installed post-installation script returned error exit status 1 
dpkg: dependency problems prevent configuration of sbt: 
sbt depends on openjdk-8-jdk; however: 
    Package openjdk-8-jdk is not installed. 
    Package oracle-java8-installer which provides openjdk-8-jdk is not configured yet. 

dpkg: error processing package sbt (--configure): 
dependency problems - leaving unconfigured 
No apport report written because the error message indicates its a followup error from a previous failure. 
                              Errors were encountered while processing: 
oracle-java8-installer 
sbt 
E: Sub-process /usr/bin/dpkg returned an error code (1) 

如何解决这个我错误停止的过程?

更新1:

我已经试过这solution。但是它仍然没有帮助我解决这个问题,并在下面得到相同的错误?

After this operation, 0 B of additional disk space will be used. 
Do you want to continue? [Y/n] y 
Setting up oracle-java8-installer (8u131-1~webupd8~2) ... 
Installing from local file /var/cache/oracle-jdk8-installer/jdk-8u131-linux-x64.tar.gz 
Removing outdated cached downloads... 
install: cannot stat 'javaws-wrapper.sh': No such file or directory 
dpkg: error processing package oracle-java8-installer (--configure): 
subprocess installed post-installation script returned error exit status 1 
dpkg: dependency problems prevent configuration of sbt: 
sbt depends on openjdk-8-jdk; however: 
    Package openjdk-8-jdk is not installed. 
    Package oracle-java8-installer which provides openjdk-8-jdk is not configured yet. 

dpkg: error processing package sbt (--configure): 
dependency problems - leaving unconfigured 
No apport report written because the error message indicates its a followup error from a previous failure. 
                              Errors were encountered while processing: 
oracle-java8-installer 
sbt 
E: Sub-process /usr/bin/dpkg returned an error code (1) 
+0

可能有[Oracle JDK 8未安装。子进程安装后安装脚本返回错误退出状态1](http://stackoverflow.com/questions/26121499/oracle-jdk-8-is-not-installed-subprocess-installed-post-installation-script-retu) –

+0

@EvgenyVeretennikov这并不能解决我的问题。请参阅我的更新。 – karan

回答

8

自从你问了这么久以后。由于这里没有答案,我向你展示我的解决方案,对我来说很好。

问题的根源可能来自以前的java安装(它不是来自任何存储库,而是来自手动下载软件包)。 因此,你必须手动删除后安装脚本,使用下面的命令:

sudo rm /var/lib/dpkg/info/oracle-java8-installer.postinst -f 
sudo dpkg --configure oracle-java8-installer 

希望他们帮你。

4

当使用ppa:webupd8team/java时,可以在PPA中硬编码的不推荐/存档Oracle链接。 Oracle正在将其旧版本归档并且PPA具有内部链接以“活动”(在创建PPA时)Oracle下载版本。

ppa:webupd8team/java维护者是只有一个人 - 安德鲁(见here

问题

download failed 
Oracle JDK 8 is NOT installed. 
dpkg: error processing package oracle-java8-installer (--configure): 
subprocess installed post-installation script returned error exit status 1 
Errors were encountered while processing: 
oracle-java8-installer 
E: Sub-process /usr/bin/dpkg returned an error code (1) 

解决方案

cd /var/lib/dpkg/info 
sudo sed -i 's|JAVA_VERSION=8u151|JAVA_VERSION=8u162|' oracle-java8-installer.* 
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/|' oracle-java8-installer.* 
sudo sed -i 's|SHA256SUM_TGZ="c78200ce409367b296ec39be4427f020e2c585470c4eed01021feada576f027f"|SHA256SUM_TGZ="68ec82d47fd9c2b8eb84225b6db398a72008285fafc98631b1ff8d2229680257"|' oracle-java8-installer.* 
sudo sed -i 's|J_DIR=jdk1.8.0_151|J_DIR=jdk1.8.0_162|' oracle-java8-installer.* 

Java版本的变化,使更新8u1518u162以反映您的环境。 (这个版本曾在Ubuntu 16.04.3 LTS - 2018年1月18日)

再次尝试

apt install oracle-java8-installer 
apt install oracle-java8-set-default 

了解更多关于这个问题

+0

只是想感谢你的答案,因为它帮助我摆脱了头部划痕。这是很难找到的那种信息,我很感谢你的分享。干杯! –

+0

我详细地发布了它,因为它让我昨天晚上醒来的时间太长了,我想为昨晚我遇到的麻烦保存一些人。很高兴我能帮上忙 :) – hrvoj3e