SonarQube API:具有包含字符串的密钥的项目
Posted
技术标签:
【中文标题】SonarQube API:具有包含字符串的密钥的项目【英文标题】:SonarQube API: projects with key that includes string 【发布时间】:2017-12-16 23:36:13 【问题描述】:根据api/components/search
的documentation,参数q
:
将搜索限制为包含所提供字符串的组件名称或组件键。
不幸的是,该语句仅适用于名称,使用键搜索需要完整的字符串。是否有任何其他可能仅使用键的子字符串来搜索项目?
在 6.3.1 和 6.4 中试过,两个版本都不行。
【问题讨论】:
【参考方案1】:目前不支持通过部分键搜索组件。
控制这个查询的搜索结果的代码是ComponentMapper.xml
中的这个sn-p:
<if test="query.nameOrKeyQuery!=null">
and (
p.kee = #query.nameOrKeyQuery,jdbcType=VARCHAR
or
upper(p.name) like #query.nameOrKeyUpperLikeQuery,jdbcType=VARCHAR escape '/'
)
</if>
这里,nameOrKey
是q
参数的值,
由ComponentQuery
管理。
在上面的 sn-p 中,您可以看到该值用于完全匹配项目键,或部分匹配项目名称。
【讨论】:
在我看来,您应该更改服务描述 - 它具有误导性。 @ArturMalinowski 文档的修复将成为即将发布的版本的一部分 (here's the commit) 是否支持按部分键搜索?以上是关于SonarQube API:具有包含字符串的密钥的项目的主要内容,如果未能解决你的问题,请参考以下文章