2012-02-28 19 views
14

Tôi đã tải xuống và trích xuất số apache-tomcat-7.0. Theo hướng dẫn trong RUNNING.txt (% CATALINA_BASE%/RUNNING.txt), nó sẽ đặt JRE_HOME trong tệp "setenv.sh".Tomcat 7 setenv.sh không được tìm thấy

Tệp này nằm ở đâu? Tài liệu cho biết, nó sẽ nằm trong thư mục CATALINA_HOME/bin. Tuy nhiên tệp này không có ở đó.

Trả lời

9

Chỉ cần tạo một chính bạn; nó không phải là một phần của bản phân phối. Nó không phải là khó. Trong trường hợp của bạn, chỉ cần thêm

JRE_HOME=/path/to/your/java/installation 

vào tệp và làm cho tệp thực thi (chmod 755 setenv.sh).

Bạn cũng có thể thêm các tùy chọn khác (ví dụ: -Xmx) nếu cần.

+0

không nên là 'xuất JRE_HOME = ... '? –

+0

Ghm, tôi sử dụng lệnh tương tự cho 'CATALINA_OPTS' và lệnh này hoạt động mà không xuất. Trong bất kỳ cách nào OP có thể xác nhận điều này. – mindas

+1

ok xin vui lòng bỏ qua, xuất khẩu không cần thiết cho setenv.sh –

0

Câu trả lời của người dùng Mindas là hoàn toàn chính xác: cần tạo tệp setenv.sh trong thư mục CATALINA_HOME hoặc CATALINA_BASE, vì nhận xét trong tệp catalina.sh cho biết.

Tuy nhiên, có sự cố "gà và trứng" trong đó Tomcat phải đoán vị trí của thư mục CATALINA_HOME/bin/ trong trường hợp không đặt biến môi trường CATALINA_HOME.

Tôi đã gặp phải tình huống này trên máy chủ Ubuntu, trong đó may mắn là Tomcat đoán chính xác thư mục CATALINA_HOME/bin/. Đối với môi trường người dùng đơn lẻ, việc tùy biến Tomcat cho những người dùng khác nhau là không cần thiết, có vẻ như việc đặt biến môi trường JAVA_HOME hoặc JRE_HOME trong tập lệnh catalina.sh sẽ là giải pháp cho vấn đề "gà và trứng".

20

Documentation không đề cập về sự vắng mặt của setenev.(sh|bat) file:

(3.4) Using the "setenv" script (optional, recommended) 

Apart from CATALINA_HOME and CATALINA_BASE, all environment variables can 
be specified in the "setenv" script. The script is placed either into 
CATALINA_BASE/bin or into CATALINA_HOME/bin directory and is named 
setenv.bat (on Windows) or setenv.sh (on *nix). The file has to be 
readable. 

    By default the setenv script file is absent. If the script file is present 
    both in CATALINA_BASE and in CATALINA_HOME, the one in CATALINA_BASE is 
    preferred 

    For example, to configure the JRE_HOME and CATALINA_PID variables you can 
    create the following script file: 

On Windows, %CATALINA_BASE%\bin\setenv.bat: 

    set "JRE_HOME=%ProgramFiles%\Java\jre6" 
    exit /b 0 

    On *nix, $CATALINA_BASE/bin/setenv.sh: 

     JRE_HOME=/usr/java/latest 
     CATALINA_PID="$CATALINA_BASE/tomcat.pid" 

http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt

2

Nếu bạn không tìm thấy "setenv.sh" hoặc "setenv.bat" trong thư mục bin của tomcat, hãy làm theo các tập hợp sau:

  1. Tạo tệp mới trong thư mục bin của tomcat.
  2. Đổi tên nó để setenv.sh cho linux dùng hoặc setenv.bat cho cửa sổ dùng
  3. Bây giờ bạn có thể thiết lập nhiều điều vào tập tin này:

Thiết JRE_HOME

Đối linux người dùng

JRE_HOME=/path/to/jre/jre6 

Đối của Windows dùng

set JAVA_HOME=C:\Path\to\jre\jdk6 

Thiết JAVA_OPTS

Đối linux dùng

JAVA_OPTS="$JAVA_OPTS -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///C:/foobar.properties" 

Đối cửa sổ dùng

set "JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///D:\foobar.properties" 

Khởi động lại tomcat sau khi đặt biến. Vậy đó.

+0

Tuyệt vời !! Đã làm cho tôi –