2011-11-03 35 views
7

cách sử dụng API ghi log4j trong dự án rcp eclipse ?? Như một workaround tôi đã cố gắng để tạo ra một gói OSGI mới trong đó có một lọ log4j, dưới đây là cấu trúc bó.Cách sử dụng log4j trong nhật thực rcp

log4j an external plugin

Tôi đã crated một ứng dụng RCP cơ bản với một cái nhìn (template) có tên loggingtest .I've bao gồm các bó log4j trong tab phụ thuộc của loggingtest project.In Activator phương pháp bắt đầu tôi đặt đoạn mã sau

Logger logger = Logger.getLogger(Activator.class); 
logger.info("Info starting"); 
logger.warn("Warning starting"); 
logger.error("Error starting"); 

nên mọi thứ đều tốt cho đến nay tôi có thể sử dụng API log4j và nửa chặng đường, tôi cảm thấy bối rối như nơi để đặt các log4j.prope rties tập tin, làm thế nào tôi có thể tiến hành thêm để có được một tập tin đăng nhập với tất cả các báo cáo đăng nhập.

được chính xác hơn dưới đây là nội dung của file manifest của tôi về dự án loggingtest

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: LoggingTest 
Bundle-SymbolicName: LoggingTest; singleton:=true 
Bundle-Version: 1.0.0.qualifier 
Bundle-Activator: loggingtest.Activator 
Require-Bundle: org.eclipse.ui, 
org.eclipse.core.runtime, 
log4j;bundle-version="1.0.0" 
Bundle-ActivationPolicy: lazy 
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 
+0

Chỉ khi ai đó không gắn với log4j, RCP Eclipse cung cấp cơ sở ghi nhật ký riêng của mình - https://wiki.eclipse.org/FAQ_How_do_I_use_the_platform_logging_facility%3F cho phép bạn làm việc trong nền tảng Eclipse mà không cần hack thủ công. –

Trả lời

5

Có một posting how-to setup Log4J trong một OSGi-Môi trường. Cũng xem xét sử dụng Ghi nhật ký Pax khi làm việc với OSGi.

+1

theo cùng một bài đăng hoạt động trong IDE khá tốt, khi tôi cố gắng xuất sản phẩm không thể tạo tệp nhật ký – srk

+0

bắt đầu sản phẩm của bạn bằng -console và kiểm tra qua OSGi-console nếu gói ghi nhật ký và phân đoạn được tải và bắt đầu ... –

+1

Tôi đã quên thêm lo4j.các thuộc tính cho đường dẫn xây dựng nhị phân và cuối cùng nó làm việc cho tôi sau khi thêm rằng để xây dựng đường dẫn, lòng biết ơn – srk

3

Tôi đang sử dụng log4j với ứng dụng RCP của mình
đây là những gì bạn nên làm: chỉ cần thả plugin log4j (bạn có thể lấy phiên bản 'osgified' từ Kho lưu trữ gói mùa xuân) và thả nó vào thư mục 'dropin' cài đặt nhật thực của bạn.
sau đó, bạn nên thêm plugin này như một dependencie của ứng dụng của bạn và trên lớp Activator của bạn, làm như sau:
URL confURL = getBundle().getEntry("log4j.properties"); PropertyConfigurator.configure(FileLocator.toFileURL(confURL).getFile());

và thả này 'log4j.properties' vào thư mục gốc của web site của ứng dụng của bạn
xin lỗi về tiếng anh của tôi

0
  1. Thêm log4j.jar vào dự án của bạn.
  2. Thêm tham chiếu trong MANIFEST.MF. Require-Bundle: org.apache.log4j;bundle-version="1.2.15"
  3. Thêm tham chiếu trong build.properties.

bin.includes = plugin.xml,\ META-INF/,\ .,\ lib/log4j-1.2.17.jar

  1. Sử dụng logger trong java file.

PropertyConfigurator.configure(log4jConfPath); LOGGER.debug("STARTING APPLICATION ..");

tôi thấy hướng dẫn này hữu ích. Vui lòng kiểm tra - Add log4j to RCP Application

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