gpt4 book ai didi

java - 如何使 spring @ManagedOperationParameter 与 scala 一起工作

转载 作者:行者123 更新时间:2023-12-01 13:35:41 26 4
gpt4 key购买 nike

在我的 scala 代码中,这工作正常:

import org.springframework.jmx.export.annotation.{ManagedOperationParameters, ManagedResource, ManagedOperation, ManagedOperationParameter}
@Override @ManagedOperation(description = "somedesk")
def getStatsAsStr: String = "blabla"

但是一旦我添加@ManagedOperationParameters,我就会得到illegal start of simple expression for @ManagedOperationParameter(,尽管我确实导入了它。

所以在 java 中编译得很好:

@Override @ManagedOperation(description = "some description")
@ManagedOperationParameters({@ManagedOperationParameter(name = "myname", description = "myname")
})

在 scala 中无法编译:

import org.springframework.jmx.export.annotation.{ManagedOperationParameters, ManagedResource, ManagedOperation, ManagedOperationParameter}
@Override @ManagedOperation(description = "some description")
@ManagedOperationParameters(Array(@ManagedOperationParameter(name = "myname", description = "mydesc")) // PRODUCES 'illegal start of simple expression for @ManagedOperationParameter('
def getStatsAsStr(myname: String): String = "blabla"

有办法让它发挥作用吗?如果我在同一个项目中使用 java 语法将其创建为 .java ,一切都很好(这意味着我的依赖关系很好),我认为它与 scala 相关code> 语法我不明白它是什么?

最佳答案

内部注释值必须使用不同的语法构造。这应该可行(为了清晰起见添加了空格,不相关);如果没有,请尝试用位置参数替换命名参数。

@ManagedOperationParameters(
Array(
new ManagedOperationParameter(name="myname", description="mydesc")
))

关于java - 如何使 spring @ManagedOperationParameter 与 scala 一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21292252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com