2014-11-18 13 views
12

Tôi cần java 1.7 và máy chủ chỉ có 1.6. Tôi không có đặc quyền root. Tôi đã cố gắng để google ra một cái gì đó nhưng có vẻ như không ai làm điều đó. Tôi có thể bằng cách nào đó biên dịch nó hoặc nhận các tệp nhị phân sẵn sàng để tôi có thể đưa chúng vào PATH của tôi không. Bạn có thể giúp không? Hệ thống là Redhat.Làm thế nào để cài đặt java cục bộ - không root - trên linux, nếu có thể?

+0

xem http://www.oracle.com/technetwork/java/javase/downloads/index.html –

+0

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260. html –

Trả lời

27

Khá dễ dàng ...

Tải xuống JDK dưới dạng tarball từ Oracle (tìm kiếm đơn giản trên google sẽ tạo liên kết).

Giải nén nó ở đâu đó trong $ HOME của bạn (ví dụ: $HOME/jdk).

Đặt JAVA_HOME thành đường dẫn của cài đặt JDK gốc; rồi thêm $JAVA_HOME/bin vào số PATH của bạn.

Và bạn tắt đi.


Ở đây tôi có một môi trường đặc biệt là trong chừng mực tôi chạy ba phiên bản chính khác nhau của JDK: 6, 7, 8. Ví dụ, đây là tập tin nguồn của tôi để cài đặt vỏ hiện tại để sử dụng Java 8:

$ cat ~/.jdk/8 
export JAVA_HOME=/opt/sunjdk/1.8/current 
export PATH="$JAVA_HOME/bin:$PATH" 

và trong /opt/sunjdk/1.8 (cho rằng /opt/sunjdk là ghi bởi người dùng của tôi vì vậy tôi không cần phải root):

$ ls -l /opt/sunjdk/1.8/* -d 
lrwxrwxrwx 1 fge fge 11 Oct 30 10:09 /opt/sunjdk/1.8/current -> jdk1.8.0_25 
drwxr-xr-x 1 fge fge 274 Mar 18 2014 /opt/sunjdk/1.8/jdk1.8.0_05 
drwxr-xr-x 1 fge fge 274 Sep 18 02:44 /opt/sunjdk/1.8/jdk1.8.0_25 

(và vâng , Tôi là root để bắt đầu với việc cấp quyền ghi cho /opt/sunjdk cho người dùng "của tôi"; nếu bạn không có quyền tự do như vậy, chỉ cần tạo một thư mục khác trong nhà của bạn)

+0

Bạn cũng có thể thực hiện cài đặt thủ công cho OpenJDK. Tôi không tìm thấy bản tải xuống trên trang web, nhưng tại đây www.azul.com/downloads/zulu/zulu-linux/ bạn sẽ tìm thấy OpenJDK mới nhất dưới dạng .tar.gz. –

4

Oracle cung cấp JRE và JDK cũng như * .tar.gz cho Linux. Tôi thường thành công khi tải xuống một gói như vậy, giải nén/giải nén nó (tar -xzvf jdk-8u25.tar.gz) và sau đó chạy nó, sử dụng đường dẫn tuyệt đối.

-1

xuất khẩu JAVA_HOME =/opt/sunjdk/1.8/hiện
export PATH = "$ JAVA_HOME/bin: $ PATH"

Đối với tôi tùy chọn này chỉ làm việc khi tôi thay đổi linux để sử dụng bash thay vì ksh. Tôi không biết đây có phải là loại cấu hình trong công ty hay không, nhưng khi tôi cố gắng chạy qua ksh bằng cách sử dụng lệnh "set" thay vì "export" để xác định đường dẫn, nó được đặt đúng với đường dẫn cài đặt Java mới của tôi, nhưng khi tôi nhập which java phiên bản cũ đã được hiển thị. Nhưng, khi tôi thực thi bash, và gõ "export", nó hoạt động. Vì vậy, nếu ai đó có cùng một vấn đề để cấu hình nó bằng cách sử dụng lệnh set, hãy thử sử dụng bash với lệnh export. Tôi đang sử dụng Redhat 6.2.

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