java - 如何在 Java 项目中使用 HeidelTime 时间标记器?

标签 java maven temporal heideltime

我想自动识别文档流中的日期,在这个意义上我想使用开源项目 Heideltime 提供的代码,可在此处获取 (https://code.google.com/p/heideltime/)。我已经安装了 Heideltime 工具包(不是独立版本),现在我想知道如何引用它并在我的 Java 项目中调用它。我已经在我的 pom.xml 中添加了对 Heideltime 的依赖:

    <dependency>
        <groupId>de.unihd.dbs</groupId>
        <artifactId>heideltime</artifactId>
        <version>1.7</version>
    </dependency>

但是我不确定如何将这个源项目中的类调用到我自己的项目中。我正在为两者使用 Maven。以前使用过它的任何人都可以给我建议或建议吗?非常感谢!

最佳答案

heideltime-kit 本身就是一个 Maven 项目。因此,您可以将 heideltime-kit 项目添加为依赖项。 (在Netbeans中,右击Dependencies,--> Add Dependency --> Open Projects(确保项目先打开)--> HeidelTime)

然后将 config.props 文件移动到项目的 src/main/resources 文件夹中。在 config.props 中设置 treetagger 的路径。

就使用这些类而言,您需要使用 POSTagger.TREETAGGER 作为 posTagger 参数和硬编码路径来创建 HeidelTimeStandalone 的实例(请参阅 de.unihd.dbs.heideltime.standalone.HeidelTimeStandalone.java)您的 src/main/resources/config.props 文件作为 configPath 参数。 例如,

heidelTime = new HeidelTimeStandalone(Language.ENGLISH,
                                      DocumentType.COLLOQUIAL,
                                      OutputType.TIMEML,
                                      "path/to/config.props",
                                      POSTagger.TREETAGGER, true);

然后要使用HeidelTime处理文本,只需调用process函数即可:

String result = heidelTime.process(text, date);

关于java - 如何在 Java 项目中使用 HeidelTime 时间标记器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27337268/

相关文章:

java - 来自父 pom 的 Maven 依赖管理覆盖 ${project.version}

java - 如何从pom.xml获取maven项目安装目录

java - try-multicatch 与 ExceptionInInitializerError 和 ArithmeticException 混淆

java - 基于 JDBC 的 HSQLDB : execute SQL statements in batch

java - spring boot 1.3 maven模块无法 Autowiring

java - TemporalAdjuster - 从调整后的日期获取下一个日期

sql-server - SQL Server 时态表不保留事务中更新和删除的删除历史记录

java - 如何修复错误包 com.mysql 不存在

java - Java中的数字格式错误