2010-02-05 6 views
7

현재 J2EE 애플리케이션을위한 자체 부트 스트래핑/배치 설정 작업을하고 있습니다. 제 목표는 배포 할 때마다 Java, App Server 및 앱 배포를 설치하는 것입니다. 불행히도 나는 자바 설치를 자동화하는 문제에 직면 해있다.유닉스에서 자바 설치 자동화하기

java 설치는 자동 압축 해제 바이너리 (예 : jre-6u18-solaris-sparc.sh)로 제공됩니다. 문제는 라이센스 계약을 읽고 "예/아니오"를 입력하라는 메시지가 나타납니다.

자동화하려고하면 "압축 해제"를 사용하여 파일을 압축하면 확장되지만 무언가 잘못되거나 자동 압축 풀림 파일이 실행될 때 일부 단계가 건너 뛰게됩니다. 자바를 실행하려고하면 라이브러리가 없거나 다른 여러 가지 오류 메시지가 표시됩니다.

현재 수동으로 다운로드하고 설치 한 다음 압축을 푼 내용을 압축하여 내부적으로 수정 된 배포를 호스팅하는 것이 좋습니다. 이상적이지 않음 b/c 나는 SUN의 원래 배포본으로 더 이상 일하지 않습니다.

답변

5

설치 스크립트는 각 플랫폼에 다를 수 있지만, 리눅스, 3 개 장애물은 극복 할 필요가있다 : 긴 EULA

  • 통해

    • 간격이 "예"입력하기 EULA
    • 에 동의 설치가 완료되면 Enter 키를 누릅니다.

    당신은 EULA가 인쇄되지 않습니다 그래서 /dev/null에 표준 출력을 리디렉션하는 동안 스크립트에서 과 줄 바꿈을 메아리로 멀리 이와 얻을 수 있습니다 :

    echo "yes" "\n" | ./jdk-6u16-linux-i586.bin 1>/dev/null 
    

    당신은 조정할 수있다 this on Solaris

  • +0

    Solaris에서와 같은 경험. 그리고 s/stdin/stdout/위. – pra

    +0

    고마워요. – Kevin

    1

    'expect'스크립트를 사용하는 것을 고려하지 않으시겠습니까? 어색한 방식 대신 스크립트를 사용하면 동의 페이지 인 '예'로 간단히 입력됩니다. 다운로드 링크 here입니다. 패키지를 포함하는 기대를 사용하는 래퍼 ... Tom.

    0

    허드슨이 어떻게하는지보십시오. Sun에서 Java 1.4, 5 및 6 이상을 동적으로 다운로드하여 설치할 수 있습니다.