Solaris jdk 7 설치 오류 java -version 해당 파일이나 디렉토리가 없습니다.

Solaris jdk 7 설치 오류 java -version 해당 파일이나 디렉토리가 없습니다.

따라해보려고 해요이것다음 정보가 포함된 Solaris 10용 jdk 설치 방법에 대한 지침이 있는 웹 사이트:

$ isainfo -v
64-bit amd64 applications
        ssse3 tscp sse3 sse2 sse fxsr mmx cmov amd_sysc cx8 tsc fpu
32-bit i386 applications
        ssse3 tscp sse3 sse2 sse fxsr mmx cmov sep cx8 tsc fpu

지시에 따라 java -version 명령을 입력하면 오류가 발생합니다.

$ java -version
bash: java: command not found

누구든지 도울 수 있습니까? 감사해요

내가 취한 단계는 다음과 같습니다.

$ ls -l
total 14
drwxr-xr-x   6 root     bin          512 Sep 17 11:17 instances
lrwxrwxrwx   1 root     other          7 May 12 14:21 j2sdk1.4.2_34 -> ../j2se
lrwxrwxrwx   1 root     other         18 May 12 14:22 jdk1.5.0_32 -> instances/jdk1.5.0
lrwxrwxrwx   1 root     other         18 May 12 14:21 jdk1.6.0_37 -> instances/jdk1.6.0
lrwxrwxrwx   1 root     root          22 Sep 17 11:20 jdk1.7.0_67 -> instances/jdk1.7.0_67/
lrwxrwxrwx   1 root     root          11 Sep 18 09:42 latest -> jdk1.7.0_67
drwxr-xr-x   8 root     bin          512 May 12 15:04 packages
$ rm latest
$ ln -s instances/jdk1.7.0_67 jdk1.7.0_67
$ ln -s jdk1.7.0_67 latest
$
$ pwd
/usr/jdk
$
$ cd /usr/
$ ls -ld
drwxr-xr-x  43 root     sys         1024 Sep 18 09:45 .
$ ls -ld java
lrwxrwxrwx   1 root     root          10 Sep 18 09:43 java -> jdk/latest
$ pwd
/usr
$ rm java
$ ls -ld java
java: No such file or directory
$ ls -ld
drwxr-xr-x  43 root     sys         1024 Sep 18 10:24 .
$
$ ln -s jdk/latest java
$ java -version
bash: java: command not found

고쳐 쓰다

$ echo $PATH
/usr/sbin:/usr/bin:/usr/java/bin:/usr/ant/apache-ant/bin:/u01/oracle/middleware/wlserver_10.3/common/bin:/opt/CollabNet_Subversion/bin


Error
    $ java -version
    bash: java: command not found

업데이트 2 다른 내보내기 출력 생략

$ PATH=$PATH:/usr/jdk/instances/jdk1.7.0_67/bin
$ export path
$ export
declare -x ANT_HOME="/usr/ant/apache-ant"
declare -x HOME="/"
declare -x JAVA_HOME="/usr/java"
declare -x JAVA_OPTS="-Xms512m -Xmx1024m"
declare -x PATH="/usr/sbin:/usr/bin:/usr/java/bin:/usr/ant/apache-ant/bin:/u01/oracle/middleware/wlserver_10.3/common/bin:/opt/CollabNet_Subversion/bin:/usr/jdk/instances/jdk1.7.0_67/bin"
declare -x PWD="/usr/java/bin/amd64"
declare -x SHELL="/bin/bash"
declare -x TERM="xterm"
$ java -version
bash: java: command not found

답변1

귀하가 무언가를 창조하고 있다고 믿기 때문에 이것은 귀하의 질문에 대한 복잡한 답변입니다.방법필요한 것보다 더 복잡합니다.

귀하의 설치에 어떤 문제가 있는지 추측해 보겠습니다. Solaris의 64비트 Java에 대한 아래 사항을 참조하면 귀하가 잘못하고 있는 것은 다음과 같습니다.오직Solaris용 64비트 Java 오버레이가 설치되었습니다. 그건 작동하지 않습니다.

자, 이제 여러분의 관심을 끌었으니(:-)) 여러분 모두가 잘못된 길을 가고 있다고 생각하는 이유를 용서해 주십시오.

당신이 언급한 블로그를 제가 팔로우할지는 잘 모르겠습니다. 내 경험에 따르면 Solaris 자체는 Java 프로세스(등록 도구 데몬, ​​웹 콘솔, 일반 에이전트 컨테이너 등. 실제로는 중요하지 않지만 여전히)를 시작할 수 있으며 시스템 전체 Java를 변경하는 것은 아마도 나쁜 생각일 것입니다..또는 적어도 각 응용 프로그램에 대한 통제력이 떨어집니다. 단순히 시스템을 떠나면 Java는훨씬 더 간단하다방법, IMHO.

다음은 Solaris에서 Java를 처리하는 방법에 대한 제가 높이 평가하는 가이드입니다.

  • 일반사항: 시스템 전문가로서 절대로 시작하지 마십시오. java.com. 소비자/데스크톱 컴퓨터에서 사용할 수 있습니다. 항상 사용Oracle Tech Network 사이트의 Java(저는 아직도 사용하고 있어요http://java.sun.com나는 이 링크가 향후 10년 동안 계속 작동할 것이라고 확신합니다 :-))

  • 시스템 전체의 Java는 그대로 두십시오. 그 삶을 살게 놔두세요.

  • Java 패키지를 다른 것으로 추출 /opt/java하십시오 /apps/java. 어딘가에통제하면 자연스럽게 느껴집니다. JAVA_ROOT이제부터 그렇게 부르자.

  • java.sun.com이러한 패키지의 압축 을 풀면 JAVA_ROOT하위 디렉터리는 다음과 같이 표시됩니다(예):

jdk1.7.0_05
jdk1.7.0_09
jdk1.7.0_17
jdk7 -> jdk1.7.0_17
jre -> jre7
jre1.6.0_32
jre1.7.0_05
jre1.7.0_17
jre1.8.0_20
jre6 -> jre1.6.0_32
jre7 -> jre1.7.0_17
jre8 -> jre1.8.0_20
  • 심볼릭 링크를 어떻게 사용하는지 참고하세요. 알았어, 알겠지?

  • 애플리케이션을 시작할 때 PATH원하는 Java를 가리키기만 하면 됩니다(애플리케이션이 시작될 때). 일부 응용 프로그램에서는 변수를 설정하기를 원하기도 합니다 JAVA_HOME. 이제 애플리케이션별로 제어할 수 있습니다. 애플리케이션 시작 스크립트에서 심볼릭 링크를 사용하는 경우 필요한 경우 시스템 전반에 걸쳐 변경할 수 있는 기능을 일부 유지할 수 있습니다. 애플리케이션에 특정 버전의 Java가 필요한 경우 심볼릭 링크 중 하나가 아닌 특정 버전을 가리키도록 하십시오.

  • 64비트 시스템에 대한 중요 참고 사항: Java 7 이전(및 포함)에 설치해야 합니다.64비트 지원이 실제로 32비트 패키지에 대한 오버레이로 제공되기 때문에 java.sun.com의 패키지는 서로 겹쳐져 있습니다. 이는 다른 모든 운영 체제와 다르기 때문에 대부분의 사람들을 혼란스럽게 합니다. 32비트 Java를 사용하지 않으려는 경우에도 먼저 32비트 Java 패키지를 넣은 다음 64비트 Java 패키지로 덮어써야 합니다. 다행스럽게도 Oracle은 더 이상 Solaris용 32비트 Java를 제공하지 않기 때문에 Java 8에서는 이러한 상황이 바뀌었습니다.

이 솔루션의 명백한 단점은 Java 패키지 관리자 사용의 이점을 놓친다는 것입니다. 단점보다 장점이 훨씬 크다고 생각합니다. 스스로 판단하십시오.

뛰어난 패키지 관리자를 갖춘 Solaris 11에서도 나는 이 솔루션을 여전히 좋아합니다.

답변2

하다

PATH=$PATH:/usr/jdk/instances/jdk1.7.0_67/bin
export PATH

그리고 다시 시도해 보세요.

답변3

Solaris에서 이 java명령은 일반적으로(항상 그런 것은 아님) /usr/bin/java일반적 으로 /usr/bin/java설치된 바이너리에 대한 심볼릭 링크를 나타냅니다 java.

예를 들어, 내 Solaris 시스템 중 하나에서:

dev:/ which java
/usr/bin/java
dev:/ ls -l /usr/bin/java
lrwxrwxrwx   1 root     other         16 Nov 19  2013 /usr/bin/java -> ../java/bin/java
dev:/

이를 심볼릭 링크로 사용하면 다른 버전의 Java를 쉽게 설치할 수 있습니다. /usr/bin/java새로 설치된 바이너리 버전 으로 링크를 변경하면 java새 버전이 사용됩니다. 이전 버전으로 되돌려야 하는 경우 심볼릭 링크를 매우 빠르게 이전 값으로 변경할 수 있습니다.

링크가 아직 존재하지 않는 경우 링크를 설정하십시오.

ln -s <path to java binary that you wish to use> /usr/bin/java

관련 정보