Chỉ định JDK cho tomcat7


41

Tôi đã cài đặt tomcat7(sử dụng apt-get install) và bất cứ khi nào tôi muốn bắt đầu, tomcat7nó sẽ báo:

* no JDK found - please set JAVA_HOME

Tôi đã thiết lập JAVA_HOMEtrong bash.bashrcvà cả trong ~/.bashrcvà khi tôi phát hành echo $JAVA_HOMEtôi thấy rõ rằng biến này đang trỏ đến thư mục gốc của jdk của tôi. Xin vui lòng giúp tôi việc này.

Cảm ơn


2
Điều này giúp tôi tìm nơi tôi có thể cho biết tomcat7JDK sẽ sử dụng cái gì.
icedwater

Tương tự ở đây. Bây giờ tôi biết nơi tomcat tìm kiếm JAVA_HOME.
slayedbylucifer

Câu trả lời:


78

Bạn có thể thử điều này:

Chỉ cần nhấn Ctrl+ Alt+ Ttrên bàn phím để mở Terminal. Khi nó mở ra, chạy lệnh bên dưới.

gksudo gedit /etc/default/tomcat7

Khi tệp mở ra, bỏ ghi chú dòng đặt biến JAVA_HOME.

nhập mô tả hình ảnh ở đây

Lưu và khởi động lại máy chủ tomcat7.


Lưu ý rằng việc nâng cấp lên JDK 7 sẽ phá vỡ câu trả lời này. Sử dụng một liên kết tượng trưng mà không có số phiên bản sẽ cho phép nâng cấp mà không làm mất hiệu lực các biến môi trường.
Dave Jarvis

1
Cũng hoạt động cho tomcat8, chỉ cần thay thế tomcat7chuỗi bằng tomcat8.
nachtigall

9

Tomcat sẽ không thực sự sử dụng biến môi trường JAVA_HOME của bạn, nhưng hãy tìm trong một số vị trí được xác định trước và trong biến JAVA_HOME được đặt bên trong tập lệnh khởi động, như các câu trả lời khác chỉ ra. Nếu bạn không thích gây rối với tập lệnh khởi động tomcat, bạn có thể tạo một liên kết tượng trưng cho cài đặt java ưa thích của bạn, sẽ được tomcat chọn.

Ví dụ:

ln -s /usr/lib/jvm/java-8-oracle /usr/lib/jvm/default-java

2
Điều này mâu thuẫn với góidefault-jre-headless
Tino

5

Thiết bị đầu cuối mở

echo $JAVA_HOME

Sao chép kết quả. Sau đó

sudo -H gedit /etc/default/tomcat7

Thay thế #JAVA_HOME=/usr/lib/jvm/openjdk-6-jdkbằng đầu ra bạn đã sao chép từ $JAVA_HOME.


2

Chỉ cần thêm dòng sau vào / etc / default / tomcat7 tại nơi xác định biến JAVA_HOME

JAVA_HOME=/usr/lib/jvm/java-7-oracle

sau đó chạy lệnh

sudo service tomcat7 restart

0

Thêm vào câu trả lời của Mitch (câu trả lời được chấp nhận ở trên), kiểm tra /usr/lib/jvm/thư mục của bạn . Thông thường, java được cài đặt ở đó.

Bạn có thể đã cài đặt java oracle hoặc bạn có thể cài đặt phiên bản java mới nhất. Chỉ cần kiểm tra các thư mục tại /usr/lib/jvm/và thêm java của bạn đang ở.

Đối với tôi, đó là:

/usr/lib/jvm/java-8-oracle

Vì vậy, thay thế

#JAVA_HOME=/some/directory

với

#JAVA_HOME=/usr/lib/jvm/java-8-oracle

đã làm công việc cho tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.