首页 > 解决方案 > Influx Measurement Java POJO - 缺少 @TimeColumn 装饰器(但有 @Measurement 和 @Column)

问题描述

我可以使用@Measurementand@Column装饰器,但我的 IntelliJ/gradle 设置找不到@TimeColumn装饰器。

如果我导航到@Measurement(我相信 IntelliJ 使用 gradle 引入的 jar 对其进行反编译)的定义,我可以看到该文件夹​​(应该反映流入客户端库的这一部分)没有TimeColumn.java.

需要注意的一件事是,我确实必须在 gradle 中强制使用两个依赖项,但这里有一些来自相关 gradle 构建文件的片段:

resolutionStrategy {
    failOnVersionConflict()
    force 'com.squareup.okhttp3:okhttp:3.13.1'
    force 'com.squareup.okio:okio:1.17.2'
}

dependencies {
    compile(
        [group: 'org.influxdb', name: 'influxdb-java', version: "2.15"]
    )
}

这是我为编写 Influx 单元测试而创建的内部类:

@Measurement(name = "TestMeasurement")
class TestMeasurement {
    @TimeColumn
    @Column(name = "time")
    private Instant time;

    @Column(name = "value")
    private int value;
}

标签: javagradleintellij-ideainfluxdb

解决方案


@TimeColumn annotation has been added in influxdb-java 2.16, see https://github.com/influxdata/influxdb-java/blob/master/CHANGELOG.md


推荐阅读