文件尾巴不使用Apache Commons IO的TalerListenerAdapter工作



我想使用java来尾文件。我已经在类所需的依赖项的类中包括了Storm-Core-1.1.1.jar。编程和运行;但是,根本没有调用pinerlisteneradapter的"句柄"方法,并且执行被卡在主要方法中。遵循代码:

import org.apache.storm.shade.org.apache.commons.io.input.TailerListenerAdapter;
import org.apache.storm.shade.org.apache.commons.io.input.Tailer;
import org.apache.storm.shade.org.apache.commons.io.input.TailerListener;
import java.io.File;
public class LogTailTest {
    /**
     * TailerListener implementation.
     */
    static public class ShowLinesListener extends TailerListenerAdapter {
        @Override
        public void handle(String line) {
            System.out.println(line);
            System.out.println("inside handle");
        }
    }
    public static void main(String args[]) {

        TailerListener listener  = new ShowLinesListener();
        File file = new File("C:/LogFiles/Radius-log");
        System.out.println("inside main");
        Tailer tailer = Tailer.create(file, listener);
        tailer.run();
       }
}

如果执行停留在主方法中,则至少意味着它没有崩溃。您可以通过在show ShowLinesListener中实现其他TailerListener接口的其他方法来获得进一步的见解。有一些方法可以处理不存在的文件,文件旋转,通用异常等。

您不应该直接调用" parer.run()"。而是这样做:

TailerListener listener  = new ShowLinesListener();
File file = new File("C:/LogFiles/Radius-log");
System.out.println("inside main");
Tailer tailer = Tailer.create(file, listener);
Thread thread = new Thread(tailer);
thread.setDaemon(true); // optional
thread.start();

相关内容

  • 没有找到相关文章

最新更新