2012-06-14 21 views
15

Tôi đang cố gắng thiết lập máy chủ tomcat và tôi đang sử dụng hướng dẫn từ trang web đã hướng dẫn tôi đếnlỗi bash: Không thể tìm thấy /Library/...../setclasspath.sh, nhưng ở đó có

 # Execute the Tomcat startup script 
     ./startup.sh 

nhưng khi tôi nhập lệnh ./startup.sh tôi nhận được một lỗi

 Cannot find /Library/Tomcat/Home/bin/setclasspath.sh 

nhưng setclasspath.sh là ở đó (xem hình dưới đây):

enter image description here

Tôi đang làm gì sai ????


bây giờ tôi có thể không cd Home (xem ảnh chụp màn hình dưới đây):

enter image description here

đây là thông tin đường dẫn: enter image description here

+0

là danh sách thư mục đó từ/Library/Tomcat/Home/bin? Lệnh cd của bạn dường như bị cắt nhỏ. –

+1

đăng đầu ra cho 'pwd' trên thư mục đó. – nims

+0

thuộc về unix.stackexchange.com – nims

Trả lời

45

tôi đã cùng một vấn đề trên máy tính của sư tử núi của tôi và Tôi sử dụng lệnh này:

$ unset CATALINA_HOME 

và sau đó nó giải quyết vấn đề của tôi. Lệnh này sẽ không đặt biến môi trường CATALINA_HOME.

+0

Tôi đã bị lỗi: Không thể tìm thấy /usr/local/apache-tomcat-7.0.34/bin/setclasspath.sh Tệp này là cần thiết để chạy chương trình này. Mẹo của bạn đã giải quyết được vấn đề của tôi! THANKS – andi

+0

Cảm ơn !!!!!!!!!!!!!!!!!! –

1

Tôi cũng gặp sự cố tương tự và tôi có thể giải quyết vấn đề này bằng cách chỉ cần thay đổi quyền của tệp đối với thư mục tomcat. Làm cho nó đọc và viết cho tất cả mọi người. Và sh startup.sh lệnh sẽ làm việc tốt với Tomcat/7.0.34

I got this solution from here

Để làm cho tất cả các kịch bản Runnable:

sudo chmod +x /Library/Tomcat/bin/*.sh 

Tôi hy vọng nó giải quyết vấn đề của bạn quá.

0

Câu trả lời của ali là tốt, nhưng đối với một số lý do tôi cũng cần thiết để mở .bash_profile và nhận xét ra CATALINA_HOME

5

của nó vì cho phép, bạn có thể chạy này bằng gốc $ sudo pathtotomcat/bin/./startup.sh

7

chỉ cần chạy: $ unset CATALINA_HOME trong Thiết bị đầu cuối và hoạt động lại.

+0

Lưu ngày của tôi. Cảm ơn: D –

3

Vui lòng đặt lại CATALINA_HOME để trỏ đến đường dẫn chính xác. Điều đó sẽ giải quyết được vấn đề. Ví dụ: ; hiện tại nó có thể là "/ usr/share/tomcat6 /" nhưng bạn cần xác minh & điểm cho đến thư mục chính xác như "/usr/share/tomcat6/apache-tomcat-6.0.37/"

0

Điều này xảy ra gần như chắc chắn vì giá trị không chính xác của biến môi trường CATALINA_HOME trong trình bao hiện tại của bạn. Trong trường hợp của tôi ví dụ tôi đã có một cài đặt tomcat cũ mà tôi đã gỡ bỏ và cài đặt phiên bản khác nhưng quên thay đổi env var đặt trong .bash_profile. Vì vậy, bất kỳ phương pháp nào được đề xuất để loại bỏ var sẽ hoạt động. Nếu bạn có CATALINA_HOME đặt trong .bash_profile, hãy xóa nó. unset CATALINA_HOME cũng sẽ hoạt động nhưng nếu trong hồ sơ của nó, nó sẽ lại được đặt khi bạn mở một trình bao mới.

0

Mặc dù tất cả các câu trả lời được đề cập đều tốt, bạn nên biết nguyên nhân chính.

Một nơi nào đó trên hệ điều hành của bạn, tệp đang đặt biến môi trường cho hệ điều hành của bạn, một trong các tên biến là CATALINA_HOME trỏ đến địa chỉ hoặc đường dẫn. khi bạn cố gắng chạy ./startup.sh hoặc catalina.sh run, các lệnh này cần CATALINA_HOME được thiết lập bởi hệ điều hành của bạn và sẽ ghi đè cấu hình tomcat mặc định CATALINA_HOME. (Bạn có thể đã sử dụng tomcat và đặt biến này trước và bây giờ bạn quên nó)

Vì vậy, giải pháp chính là chỉnh sửa tệp đặc biệt đó và nó thực sự phụ thuộc vào hệ điều hành. Trong trường hợp của tôi, Fedora, hai tệp là ứng viên, một trong số đó là ~/.bashrc và một tệp khác là /etc/profile. Sau khi chỉnh sửa chúng, bạn cần phải source chúng hoặc log out và sau đó log in (Trên OS X Tôi cho rằng nó phải ở dạng /Users/username/.bash_profile tệp).

Tất nhiên unset CATALINA_HOME lệnh hoạt động nhưng sau khi đóng và mở một thiết bị đầu cuối mới, một lần nữa bạn cần sử dụng lệnh này do làm mới.

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