我需要使用相同的列作为聚集列和二级索引。但阿基里斯编译失败。
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(table="users")
public class Users{
@PartitionKey
@Column
private String userID;
@Index(name = "fname")
@ClusteringColumn
@Column
private String fname;
}
但是编译器抛出如下错误:
[ERROR] /D:/Work/Codebase/itam-common/schema/target/generated-sources/annotations/info/archinnov/achilles/generated/dsl/Users_SelectIndex.java:[466,44] method fname() is already defined in class info.archinnov.achilles.generated.dsl.Users_SelectIndex.E
我使用的是achilles-core:5.3.1和cassandra-driver-core:3.3.0
尝试为您的 @Column
和 @Index
注释指定不同的名称:
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(table="users")
public class Users{
...
@Index(name = "fname_idx")
@ClusteringColumn
@Column(name = "fname")
private String fname;
...
}
我是一名优秀的程序员,十分优秀!