11

Có ai đó đưa ra một kịch bản cấu hình tốt để cài đặt Oracle Java 1.7 vào phiên bản Elastic Beanstalk bằng cách sử dụng các tệp cấu hình được lưu trữ trong .ebextensions. Tôi đang sử dụng một phiên bản tomcat7 của cây đậu đàn hồi và tôi đã có thể cài đặt OpenJDK với yum sử dụng như sau:Làm thế nào để cài đặt Oracle Java 7 trong một ví dụ Amazon Elastic Beanstalk

packages: 
    yum: 
    java-1.7.0-openjdk: [] 
    java-1.7.0-openjdk-devel: [] 

commands: 
    use_java7: 
    command: alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java 

thế nào bao giờ tôi muốn sử dụng Oracle Java 1,7 không OpenJDK và yum không có mà ở đó là repo nguyên bản.

Trả lời

10

thử tập tin cấu hình này

files: 
    "/home/ec2-user/install-oracle-jdk.sh": 
    mode: "000755" 
    owner: ec2-user 
    group: ec2-user 
    content: | 
     #!/usr/bin/env bash 
     wget -O jdk-7u25-linux-x64.rpm --no-cookies --no-check-certificate --header 'Cookie:gpw_e24=http://www.oracle.com; oraclelicense=accept-securebackup-cookie' 'http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-x64.rpm'  
     rpm -Uvh /home/ec2-user/jdk-7u25-linux-x64.rpm 
     alternatives --install /usr/bin/java java /usr/java/default/bin/java 3 
     alternatives --set java /usr/java/default/bin/java 

commands: 
    execute-install-oracle-jdk-script: 
    command: ./install-oracle-jdk.sh 
    cwd: /home/ec2-user 
+1

tính năng này không hoạt động nữa, cần cập nhật liên kết tải xuống và cookie. nó đã thay đổi khi khởi chạy Java 8 mới. – tbraun

+1

Nó sẽ hoạt động trở lại :) – study

+0

công việc tuyệt vời! Cảm ơn rất nhiều! Tôi đã quá lười biếng để tìm liên kết mới này. Nhưng không lười biếng để di chuyển rpm đến máy chủ CDN của riêng tôi và bây giờ tôi không cần phải lo lắng về việc Oracle thay đổi hệ thống tải xuống của họ một lần nữa. – tbraun

1

Bạn luân phiên có thể cài đặt nó như bạn sẽ thường làm và sử dụng ami này như ami của bạn để tạo ra các trường hợp EC2 mới.

0

Câu trả lời được chấp nhận không còn hoạt động, đã lỗi thời. Điều này làm việc cho tôi:

# Install Oracle JDK 
rpm --erase --nodeps java-1.6.0-openjdk java-1.6.0-openjdk-devel 
rpm -Uvh .ebextensions/jdk-6u45-linux-amd64.rpm 
/usr/sbin/alternatives --install /usr/bin/java java /usr/java/default/bin/java 3 
/usr/sbin/alternatives --set java /usr/java/default/bin/java 
/usr/sbin/alternatives --install /usr/bin/java_sdk java_sdk /usr/java/default/bin/java 3 
/usr/sbin/alternatives --set java_sdk /usr/java/default/bin/java 

Đây là dành cho java 6, vì tôi cần nó. Ngoài ra, jdk được tải xuống từ oracle thực sự là một tệp bin bây giờ (oracle's sh script script), vì vậy những gì tôi đã làm là tải xuống tệp bin từ oracle, trích xuất nó để lấy RPM, và sau đó bao gồm RPM bên trong ebextensions.

Chỉ cần bao gồm tập lệnh sh đó để chạy trong tệp cấu hình ebextensions (google ebextenions config nếu bạn không chắc chắn).

Hy vọng điều này sẽ giúp ai đó.

Các vấn đề liên quan