web-dev-qa-db-ja.com

apt-getアップグレード後にJava)をインストールできません

Java -versionを実行すると、次のようになります。

_bash: /usr/bin/Java: No such file or directory
_

私はJavaのインストールに向けて複数のオンラインガイドに従いました。すべての手順を実行しましたが、それでもエラーが発生します。多分私はそれを間違えました-私は知りません。

出力:_dpkg -l jdk*_

_dpkg-query: no packages found matching jdk*
_

出力:_ls -l /usr/bin/Java_

_lrwxrwxrwx 1 root root 22 Nov 16 17:21 /usr/bin/Java -> /etc/alternatives/Java
_

出力:_Sudo add-apt-repository ppa:webupd8team/Java_

_add-apt-repository: command not found
_

出力:file "$(readlink -e "$(type -P Java)")"

_/usr/local/Java/jdk1.7.0_45/bin/Java: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, BuildID[sha1]=0x6849323f527575e206a1b6449617e809158e82be, not stripped
_

ldd "$(readlink -e "$(type -P Java)")の出力

_not a dynamic executable
_

Debianバージョン、_uname -a_の出力:

_Linux Cyneox 3.7-trunk-AMD64 #1 SMP Debian 3.7.2-0+kali8 x86_64 GNU/Linux
_

@テレサEジュニア

申し訳ありませんが、静的リンクの問題のため、これらの投稿にコメントすることはできません。 python-software-propertiesがこのエラーを返しました。これは、インストールしようとしているほとんどのプログラムで発生するエラーです。

_    E: Package 'python-software-properties' has no installation candidate
_

また、上記のコマンドを実行しましたが、Java-versionと入力しても何も起こりません。

ジョセフR、これは私がタイプしたすべてでした:

_root@Cyneox:/usr/bin# apt-get install ia32-libs ia32-libs:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'ia32-libs' has no installation candidate
E: Unable to locate package ia32-libs

root@Cyneox:/usr/bin# apt-get install openjdk-7-jre
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package openjdk-7-jre is not available, but is referred to by another      package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'openjdk-7-jre' has no installation candidate
_

しかし、あなたが私にくれた最初の2行はうまくいきました。

_cat /etc/apt/sources.list /etc/apt/sources.list.d/*_の出力:

_# 

# deb cdrom:[Debian GNU/Linux 7.0 _Kali_ - Official Snapshot AMD64 LIVE/INSTALL Binary 20130905-07:57]/ kali contrib main non-free

#deb cdrom:[Debian GNU/Linux 7.0 _Kali_ - Official Snapshot AMD64     LIVE/INSTALL     Binary 20130905-07:57]/ kali contrib main non-free

## Security updates
# Line commented out by installer because it failed to verify:
#deb http://security.kali.org/kali-security kali/updates main contrib non-free
deb http://http.debian.net/debian/ wheezy-backports main contrib
deb http://archive.canonical.com/ lucid partner
cat: /etc/apt/sources.list.d/*: No such file or directory
_

ジョセフ、私はアップデートであなたの修正を適用しました、そしてすべては順調に進んでいました...まで:

_Setting up openjdk-7-jre-headless:AMD64 (7u25-2.3.10-1~deb7u1) ...
update-alternatives: error: cannot stat file '/etc/alternatives/Java': Too many levels of symbolic links
dpkg: error processing openjdk-7-jre-headless:AMD64 (--configure):
 subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of ca-certificates-Java:
 ca-certificates-Java depends on openjdk-6-jre-headless (>= 6b16-1.6.1-2) | Java6-runtime-headless; however:
  Package openjdk-6-jre-headless is not installed.
  Package Java6-runtime-headless is not installed.
  Package openjdk-7-jre-headless:AMD64 which provides Java6-runtime-headless is not configured yet.

dpkg: error processing ca-certificates-Java (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of openjdk-7-jre:AMD64:
 openjdk-7-jre:AMD64 depends on openjdk-7-jre-headless (= 7u25-2.3.10-1~deb7u1); however:
  Package openjdk-7-jre-headless:AMD64 is not configured yet.

dpkg: error processing openjdk-7-jre:AMD64 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of icedtea-7-jre-jamvm:AMD64:
 icedtea-7-jre-jamvm:AMD64 depends on openjdk-7-jre-headless (= 7u25-2.3.10-1~deb7u1); however:
  Package openjdk-7-jre-headless:AMD64 is not configured yet.

dpkg: error processing icedtea-7-jre-jamvm:AMD64 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of openjdk-7-jre-lib:
 openjdk-7-jre-lib depends on openjdk-7-jre-headless (>= 7~b130~pre0); however:
  Package openjdk-7-jre-headless:AMD64 is not configured yet.

dpkg: error processing openjdk-7-jre-lib (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 openjdk-7-jre-headless:AMD64
 ca-certificates-Java
 openjdk-7-jre:AMD64
 icedtea-7-jre-jamvm:AMD64
 openjdk-7-jre-lib
E: Sub-process /usr/bin/dpkg returned an error code (1)
_

それから私は_apt-get -f install_を試しましたが、それでも失敗しました...

2
Debian4Ever

これは、64ビットマシンで32ビットアプリケーションを実行できないという長年の問題のように思えます。この問題については、ここで何度も説明しました(同様の質問については、回答の最後にある参照セクションを参照してください)。

Debian Wheezyを実行していると仮定すると、32ビットライブラリをダウンロードするには、最初にi386アーキテクチャを追加する必要があります。

# dpkg --add-architecture i386
# apt-get update
# apt-get install ia32-libs ia32-libs:i386

ただし、そうしないでください。 Teresaが直感的に理解しているように、Javaのインストールはサードパーティのソースからのものであるようです。そのため、64ビットOSを使用しているのに32ビットです。リポジトリからJavaをインストールすることをお勧めします。

# apt-get install openjdk-7-jre

トリックを行う必要があります。

更新

追加情報に基づいて、Debian安定リポジトリを/etc/sources.listに追加してください。

# echo 'deb http://ftp.debian.org/debian/ stable main contrib non-free' >>/etc/apt/sources.list
# apt-get update # may take a while
# apt-get install openjdk-7-jre

メモ

  • openjdk-7-jreは、執筆時点で最新の(Debian安定リポジトリ内の)Javaランタイム環境バージョン7をインストールすることを目的としています。他のバージョンの場合は、7を適切に置き換えてください。
  • ソフトウェアの自由に関する確信によっては、上記のコマンドのcontribおよびnon-freeの部分を削除すると、独自のクローズドソースソフトウェアをインストールできるようになります。

参照

2
Joseph R.

実際には、すでにJavaが/usr/local/Java/jdk1.7.0_45/の下にインストールされています。これはDebianの公式パスではありませんが、サードパーティのパッケージ(OracleのWebサイトのパッケージなど)からインストールした結果である必要があります。 )。/usr/binにリンクされていないだけです。/usr/local/から実行してJavaを直接使用するか、/usr/binにリンクすることができます:

Sudo update-alternatives --install /etc/alternatives/Java java /usr/local/Java/jdk1.7.0_45/bin/Java 1

これで十分です。 /usr/bin/Javaを実行して、機能するかどうかを確認してください。

さて、あなたが試みていた他の方法に関して、あなたの質問には混乱があります:あなたはDebianを使用していて、インストール方法の指示に従っていますJava in bunt。あなたDebian上のWebUpd8PPAからJavaをインストールすることもできますが、それが機能することを保証することはできません。

python-software-propertiesにはコマンドadd-apt-repositoryが含まれています:

Sudo apt-get install python-software-properties

その後、これまでどおり、アンドリューの指示に従い続けることができます。発生する最悪の事態は、APTインストールを拒否するJavaです。

1
Teresa e Junior