嘗試獲取allowableValues標(biāo)記的枚舉值時(shí)出現(xiàn)以下錯(cuò)誤。注釋屬性ApiModelProperty.allowableValues的值必須是一個(gè)常量表達(dá)式我正在嘗試做的是:@ApiModelProperty(allowableValues = new Enums().enumToString(SomeEnum.class))private String someString;這是Enums()。enumToString的邏輯公共類枚舉{public final <E extends Enum<E>> String enumToString(Class<E> inputEnum) { //inputEnum; for (Enum enumValues : EnumSet.allOf(inputEnum)) { //will create a string of the enum values } return "will be a formatted string of the enum values";}}有可能做我想做的事情嗎?我知道可以僅在我的API中公開枚舉,然后搖搖晃晃便會(huì)自動(dòng)識(shí)別允許的值,但是有問題的字段需要以字符串形式公開,即使我們的內(nèi)部邏輯將其作為枚舉也是如此。
2 回答

鴻蒙傳說
TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊
您的問題根本與Swagger無關(guān),而與基本Java無關(guān)。
在Java批注中,您可以具有常量表達(dá)式,這意味著您不能在那里進(jìn)行方法調(diào)用,而只能使用常量值。
添加回答
舉報(bào)
0/150
提交
取消