2015-05-28 30 views

回答

2

你需要“更新项目的关键”(我一直认为,这里的声纳术语是不是非常有帮助)

https://docs.sonarqube.org/display/SONAR/Project+Settings#ProjectSettings-UpdatingProjectKey

,然后重新运行分析(新项目的关键,因此更新了sonar-project.properties或build.xml或pom.xml等)

+0

我给它一个尝试。文档不是最新的。它现在在'Settings> Update key'中,而不是'Configuration> Update key'。 –

+3

BTW:它只更新技术密钥,UI上显示的名称不受影响。我也改变了它在数据库中。 – Andy

+2

你在数据库中更改了什么来更新UI显示名称? –

8

在SonarQube 5.1中,项目名称不能从Web仪表板更改(可能在将来不可能以及)。

配置我SonarQube项目sonar-project.properties在那里我只需要改变这行:

sonar.projectName=MyNewProjectName 

重新运行分析以查看结果在网络信息中心。如果您使用的詹金斯和你的声纳构建是一个后生成步骤

UPDATE sonar.projects 
SET name = 'NEW_PROJECT_NAME', 
long_name = 'NEW_PROJECT_NAME' 
WHERE kee = 'PROJECT_KEY' 
+0

在SonarQube 6.5中,您可以通过切换到您的项目然后点击“管理” - >“更新密钥”来更新您的项目密钥。 但据我所知,项目名称仍然是不变的。 – GreenTurtle

1

要在UI改变谟名字运行这个SQL查询。您可以将@adrianko提到的属性添加到您的目标中。

$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL -Dsonar.login=$SONAR_AUTH_TOKEN -Dsonar.projectName="YOUR PROJECT NAME" 
1

1
CREATE PROCEDURE usp_ChangeProjectName 
    @CaseSensitiveProjectKeyToChange VARCHAR(300), 
    @NewProjectName VARCHAR(300) 
AS 
BEGIN 
    SET NOCOUNT ON; 

    IF (SELECT COUNT(*) FROM dbo.projects WHERE kee = @CaseSensitiveProjectKeyToChange and scope = 'PRJ') > 1 
    BEGIN 
    RAISERROR ('Operation would affect more than one record, cancelling for safety.', 16, 1) 
END 

UPDATE 
    dbo.projects 
SET 
    name = @NewProjectName, 
    long_name = @NewProjectName 
WHERE 
    kee = @CaseSensitiveProjectKeyToChange and 
    scope = 'PRJ' 
END 
GO 

用法示例usp_ChangeProjectName2 '<project key>', '<new name>'