Eclipse插件中的SLF4J登录

一直都在使用Maven和纯Java库进行开发,我从没想过在开发Eclipse插件时发出一些日志语句可能会成为问题。 但是,在Eclipse开发人员的想象中,一切似乎总是在Eclipse环境中,而Eclipse宇宙之外则什么都没有。

如果您使用Google搜索上述标题,您会发现的第一篇文章是有关“平台日志记录工具”的文章。 但是第三库呢? 他们不能使用基于Eclipse的日志框架。

在我的库中,我使用SLF4J API,让用户自己决定要使用哪种日志记录实现(Log4J,Logback,JDK)。 这正是我要在Eclipse中执行的操作。 很难确切地知道该怎么做,但这是这个难题的一部分。

阶段1:开发

这描述了自定义插件开发阶段的步骤。

步骤1:将您的库放入P2存储库

您要在Eclipse中使用的所有内容都必须从P2存储库中安装。 但是我使用的大多数库都在Maven存储库中。 据我所知,没有像“ Maven Central”这样的主P2存储库,而且我在P2存储库中找到的所有库都相当老。 因此,您必须自己创建一个。

幸运的是,有一个名为p2-maven-plugin的Maven 插件可以将您所有的Maven JAR转换为单个P2存储库。 您可以将插件上传到网站的文件夹,也可以直接从本地硬盘安装。

对于此示例,您将需要以下库:

  • org.slf4j:slf4j-api:1.6.6
  • org.slf4j:slf4j-log4j12:1.6.6
  • log4j:log4j:1.2.17
  • org.ops4j.pax.logging:pax-logging-api:1.7.0
  • org.ops4j.pax.logging:pax-logging-service:1.7.0
  • org.ops4j.pax.confman:pax-confman-propsloader:0.2.2

格式“ groupId:artifactid:version”与“ p2-maven-plugin”所使用的格式相同。 要跳过此步骤,您还可以使用http://www.fuin.org/p2-repository/

步骤2:在Eclipse IDE中安装SLF4J API
  1. 选择“帮助/安装新软件...”。
    Eclipse /帮助/安装
  2. 添加P2存储库URL并安装“ slf4j-api”-您可以直接将步骤1中的文件夹与文件URL一起使用,例如:“ file:/ pathtoyour / p2-repository /”。 Instal Slf4J API
  3. 将新安装的“ slf4j.api”添加到您的MANIFEST.MF。 MANIFEST.MF中的依赖项
  4. 照常开始使用SLF4J登录代码。

阶段2:生产

这描述了自定义插件的用户必须完成的任务才能开始使用Log4J进行日志记录。 以下假设您的自定义插件已安装。

步骤1:在Eclipse IDE中安装日志库
  1. 选择“帮助/安装新软件...”。 Eclipse /帮助/安装
  2. 从Eclipse更新站点安装“ Equinox目标组件”。 安装Equinox目标组件
  3. 添加P2存储库URL并安装以下插件:
    • Apache Log4j
    • OPS4J Pax ConfMan –属性加载器
    • OPS4J Pax日志记录–API
    • OPS4J Pax日志记录-服务

    安装日志库

步骤2:配置PAX日志记录
  1. 在“ eclipse.ini”中将日志配置的位置设置为“ vmarg '
    -vmargs
    -Xms40m
    -Xmx512m
    -Dbundles.configuration.location=<config-dir>
    

  2. 在上面的“ config-dir”中创建一个名为“ services”的文件夹。
  3. 在“服务”中创建名为“ org.ops4j.pax.logging.properties”的Log4J属性。
    log4j.rootLogger=INFO, FILE
    log4j.appender.FILE=org.apache.log4j.FileAppender
    log4j.appender.FILE.File=<path-to-your-log> /example.log
    log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
    log4j.appender.FILE.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss,SSS} [%t] %-5p %c %x - %m%n
    log4j.logger.your.package=DEBUG

步骤3:激活PAX日志记录
  1. 打开“控制台”视图。 显示控制台视图
  2. 选择“主机OSGI控制台”。 选择OSGI控制台
  3. 启动以下捆绑包:
    start org.eclipse.equinox.cm
    start org.ops4j.pax.logging.pax-logging-api
    start org.ops4j.pax.logging.pax-logging-service
    start org.ops4j.pax.configmanager

    开始记录捆绑

现在,您应该能够在配置的“ example.log”文件中看到您的日志语句。

步骤4:更改配置

如果要更改“ org.ops4j.pax.logging.properties”中的配置,只需在OSGI控制台中重新启动PAX Configmanager:

stop org.ops4j.pax.configmanager
start org.ops4j.pax.configmanager

祝您伐木愉快!

参考:来自A Java Developer's Life博客的JCG合作伙伴 Michael Schnell的SLF4J登录Eclipse插件

翻译自: https://www.javacodegeeks.com/2013/01/slf4j-logging-in-eclipse-plugins.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值