2010-07-29 36 views
21

Tôi đang định cấu hình máy chủ Tomcat (5.5) trong Eclipse (3.3.2). Khi tôi thêm Tomcat và khởi động nó, đầu ra được in trong Eclipse Console. Đầu ra này được in bằng MÀU ĐỎ cho biết Lỗi Chuẩn của nó. Mặc dù máy chủ được khởi động mà không có bất kỳ lỗi nào, INFO bình thường cũng được đánh dấu là lỗi.Tomcat STDOUT là lỗi trong Eclipse

Jul 29, 2010 7:06:14 PM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.5.0_10\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jdk1.5.0_10\bin\..\jre\bin\client;C:\Program Files\Java\jdk1.5.0_10\bin\..\jre\bin;C:\Program Files\CollabNet Subversion Client;C:\Program Files\Java\jdk1.5.0_10\bin;C:\Program Files\Java\jre1.5.0_07\bin;C:\Program Files\Oracle\Oracle9i\9201\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Sybase125\OCS-12_5\bin;C:\Program Files\Sybase125\OCS-12_5\dll;C:\Program Files\Sybase125\OLEDB;C:\Program Files\Rational\ClearCase\bin;C:\Program Files\Ubsw\Wire\Core;Z:\ZUR_GCOMP_DOC\Project_Trust\datamodel\scripts\GC_trust\Release\1.36\01-DDL;K:\scripts\;C:\Program Files\Ubsw\Wire\Core\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Windows Imaging\;C:\Program Files\MySQL\MySQL Server 5.1\bin;C:\Program Files\apache-maven-2.2.1\bin;C:\Program Files\apache-ant-1.7.0\bin;C:\Viral\Tech\Java\javadb/bin;C:\Program Files\JAD 
Jul 29, 2010 7:06:15 PM org.apache.coyote.http11.Http11BaseProtocol init 
INFO: Initializing Coyote HTTP/1.1 on http-8080 
Jul 29, 2010 7:06:15 PM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 1187 ms 
Jul 29, 2010 7:06:15 PM org.apache.catalina.core.StandardService start 
INFO: Starting service Catalina 
Jul 29, 2010 7:06:15 PM org.apache.catalina.core.StandardEngine start 
INFO: Starting Servlet Engine: Apache Tomcat/5.5.30 
Jul 29, 2010 7:06:15 PM org.apache.catalina.core.StandardHost start 
INFO: XML validation disabled 
Jul 29, 2010 7:06:15 PM org.apache.coyote.http11.Http11BaseProtocol start 
INFO: Starting Coyote HTTP/1.1 on http-8080 
Jul 29, 2010 7:06:15 PM org.apache.jk.common.ChannelSocket init 
INFO: JK: ajp13 listening on /0.0.0.0:8009 
Jul 29, 2010 7:06:15 PM org.apache.jk.server.JkMain start 
INFO: Jk running ID=0 time=0/110 config=null 
Jul 29, 2010 7:06:15 PM org.apache.catalina.storeconfig.StoreLoader load 
INFO: Find registry server-registry.xml at classpath resource 
Jul 29, 2010 7:06:15 PM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 922 ms 

Bất kỳ ai cũng có thể cho tôi biết cách khắc phục điều này và thay đổi đầu ra thành BLACK thành STDOUT không?

Trả lời

11

Đó là màu đỏ vì nó được viết để sai số chuẩn (System.err), giả sử bạn đang sử dụng cấu hình bình thường.

Về mặt lý thuyết, cách khắc phục điều này là điều chỉnh cấu hình ghi nhật ký (có vẻ như là java.util.logging dựa) để các thông báo ở cấp INFO và dưới đây được ghi ra tiêu chuẩn thay thế. Thật không may, điều này hơi lộn xộn hơn một chút vì lớp ConsoleHandler được mã hóa cứng để ghi vào lỗi tiêu chuẩn và nếu bạn trộn lẫn giữa ghi vào lỗi chuẩn và lỗi chuẩn, có khả năng bạn sẽ nhận được các thông điệp đăng nhập được viết ra theo thứ tự. Bạn có thể sửa chữa nó bằng cách phân lớp StreamHandler và thực hiện nhiều việc không quan trọng - ví dụ: ghi đè publish để nó đặt luồng đầu ra nếu ghi nhật ký thay đổi từ cấp cao đến cấp thấp hoặc ngược lại - nhưng tôi thực sự nghi ngờ rằng kết quả sẽ là những gì bạn mong muốn. Nó cũng sẽ chậm.

Vì trong quá trình triển khai sản xuất của Tomcat, bạn không đăng nhập vào giao diện điều khiển (mặc định nó sẽ ghi vào tệp theo mặc định) Tôi khuyên bạn nên ngừng lo lắng về điều này.

+0

Điều này có làm được không? http://stackoverflow.com/questions/194165/how-do-i-change-java-logging-console-output-from-std-err-to-std-out và ai sẽ sử dụng nó với Tomcat? –

3

Có một câu trả lời ngắn cho câu hỏi của bạn:

clic Ngay trong Bảng điều khiển hiển thị> Preferences ...

và sau đó thiết lập "Standard màu Lỗi text" sang màu đen.

Nhưng tất nhiên, sẽ tốt hơn nếu Eclipse biết rằng nhật ký máy chủ Tomcat không được hiển thị bằng màu đỏ.

Dường như không có câu trả lời tốt hơn cho bây giờ: http://www.eclipse.org/forums/index.php?t=msg&goto=531848&

vấn đề này có thể được sao chép với Tomcat 6 và Tomcat 7 trong Eclipse 3.6.2

+0

Tôi nghĩ đây là giải pháp dễ nhất. Thật không may, đây vẫn là một vấn đề trong Eclipse Juno SR2 với Tomcat 7. – johnnieb

+0

tomcat 8 và nhật thực có cùng vấn đề – Anatoly

1

Sau đây đã làm việc cho tôi.

Trong server.xml Tomcat, nhận xét ra

<Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/> 

Có vẻ như các "màu đỏ là do" bởi Tomcat không thể nạp lib mẹ đẻ Tháng Tư Bỏ qua tải và không còn màu đỏ nữa.

+1

Đã thử điều này và nó không hoạt động. Tôi cũng đã cấu hình lib gốc của APR để tải chính xác và điều đó cũng không thay đổi gì cả. –

+0

@SamHasler Tôi nhận thấy sự cố xảy ra bất cứ khi nào Tomcat phát ra bất kỳ loại lỗi hoặc cảnh báo nào. Bạn có thấy gì khác không? – Marc

0

Đối với tôi đó là một số lỗi khác. Nó đã giúp, khi tôi chắc chắn, không có lỗi (chỉ infos), nơi khởi động đăng nhập. Rõ ràng tomcat chuyển sang đầu ra lỗi nếu nó gặp lỗi.

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