Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
SonarQube 3.6 ´úÂëÖÊÁ¿¹ÜÀíʵս
 
×÷ÕߣºÒü Åô À´Ô´£ºIBM ·¢²¼ÓÚ 2015-7-21
  3777  次浏览      27
 

SonarQube ÊÇÒ»¸ö¿ªÔ´µÄ´úÂëÖÊÁ¿¹ÜÀíϵͳ£¬Ëü¿ÉÒÔͨ¹ýʹÓòå¼þ»úÖÆÓë eclipse ºÍ JIRA µÈÆäËûÍⲿ¹¤¾ß¼¯³É£¬´Ó¶øÊµÏÖÁ˶ԴúÂëµÄÖÊÁ¿µÄÈ«Ãæ×Ô¶¯»¯·ÖÎöºÍ¹ÜÀí¡£±¾ÎÄÊ×ÏÈÌÖÂÛÁËSonarQube 3.6 µÄ»ù±¾¹¤×÷Ô­ÀíÓë°²×°Á÷³Ì£»Æä´Î·ÖÎöÁ˲ÉÓà SonarQube 3.6 µÄÈýÖÖ²»Í¬·½·¨À´¶Ô²»Í¬ÓïÑԺͼܹ¹µÄÏîÄ¿½øÐдúÂëÖÊÁ¿¹ÜÀíµÄ»ù±¾Á÷³Ì£»×îºó¶Ô±ÊÕßÔÚʵ¼ÊʹÓùý³ÌÖÐÓöµ½µÄÎÊÌâ½øÐÐÁË×ܽᣬ²¢¸ø³öÁËÏàÓ¦µÄ½â¾ö·½°¸¡£

¸ÅÊö

Ëæ×Å IT ÐÐÒµÖÐÈí¼þ²úÆ·µÄÍÆ³Â³öУ¬¿Í»§¶ÔÓÚÈí¼þ²úÆ·µÄÒªÇóÒ²Ô½À´Ô½¸ß£¬Òò´ËÈçºÎ¸ßÖÊÁ¿µÄ¹ÜÀíÈí¼þ´úÂ룬¼°Ê±µØ¶Ô´úÂëÖÊÁ¿½øÐзÖÎö²¢¸ø³öºÏÀíµÄ½â¾ö·½°¸¾Í³ÉΪÁ˵±Ï±ØÐëÒª½â¾öµÄÒ»¸öÎÊÌâ¡£Óëµ±½ñÖÚ¶àµÄ´úÂëÖÊÁ¿¹ÜÀí¹¤¾ßÏà±È£¬SonarQube ¸ü¾ßÓÐÌØÉ«ºÍ¾ºÕùÁ¦£¬ÆäÓÅÊÆÖ÷ÒªÌåÏÖΪ£ºËüÊÇÒ»¸ö¿ªÔ´µÄ´úÂëÖÊÁ¿¹ÜÀíϵͳ£¬Ö§³Ö 25+ ÖÖÓïÑÔ£¬¿ÉÒÔͨ¹ýʹÓòå¼þ»úÖÆÓë eclipse ºÍ JIRA µÈÆäËûÍⲿ¹¤¾ß¼¯³É£¬´Ó¶øÊµÏÖÁ˶ԴúÂëµÄÖÊÁ¿µÄÈ«Ãæ×Ô¶¯»¯·ÖÎöºÍ¹ÜÀí¡£

±¾ÎÄÊ×ÏÈÌÖÂÛÁË SonarQube3.6 µÄ»ù±¾¹¤×÷Ô­ÀíÓë°²×°Á÷³Ì£»Æä´Î·ÖÎöÁËʹ²ÉÓà SonarQube3.6 µÄÈýÖÖ²»Í¬·½·¨À´¶Ô²»Í¬ÓïÑԺͼܹ¹µÄÏîÄ¿½øÐдúÂëÖÊÁ¿¹ÜÀíµÄ»ù±¾Á÷³Ì£»×îºó¶Ô×Ô¼ºÔÚʵ¼ÊʹÓùý³ÌÖÐÓöµ½µÄÎÊÌâ½øÐÐÁË×ܽᣬ²¢¸ø³öÁËÏàÓ¦µÄ½â¾ö·½°¸¡£

±¾ÎÄÖ÷ÒªÌÖÂÛÈçϼ¸¸ö·½ÃæÄÚÈÝ£º

SonarQube µÄ¹¤×÷Ô­Àí½éÉÜ

SonarQube3.6 µÄ°²×°

SonarQube3.6 ´úÂëÖÊÁ¿·ÖÎö

´úÂëÖÊÁ¿·ÖÎö½á¹û½âÎö

SonarQube3.6 ʵ¼ÊʹÓÃÖÐÓöµ½µÄÎÊÌâ¼°½â¾ö·½°¸

SonarQube µÄ¹¤×÷Ô­Àí½éÉÜ

SonarQube ²¢²»ÊǼòµ¥µØ½«¸÷ÖÖÖÊÁ¿¼ì²â¹¤¾ßµÄ½á¹û£¨ÀýÈç FindBugs£¬PMD µÈ£©Ö±½ÓÕ¹ÏÖ¸ø¿Í»§£¬¶øÊÇͨ¹ý²»Í¬µÄ²å¼þËã·¨À´¶ÔÕâЩ½á¹û½øÐÐÔÙ¼Ó¹¤£¬×îÖÕÒÔÁ¿»¯µÄ·½Ê½À´ºâÁ¿´úÂëÖÊÁ¿£¬´Ó¶ø·½±ãµØ¶Ô²»Í¬¹æÄ£ºÍÖÖÀàµÄ¹¤³Ì½øÐÐÏàÓ¦µÄ´úÂëÖÊÁ¿¹ÜÀí¡£

SonarQube ÔÚ½øÐдúÂëÖÊÁ¿¹ÜÀíʱ£¬»á´Óͼ 1 ËùʾµÄÆß¸öγ¶ÈÀ´·ÖÎöÏîÄ¿µÄÖÊÁ¿¡£

ͼ 1. ÖÊÁ¿Î³¶È

SonarQube ¿ÉÒÔÖ§³Ö 25+ ÖÖ±à³ÌÓïÑÔ£¬Õë¶Ô²»Í¬µÄ±à³ÌÓïÑÔÆäËùÌṩµÄ·ÖÎö·½Ê½Ò²ÓÐËù²»Í¬£º

¶ÔÓÚËùÓÐÖ§³ÖµÄ±à³ÌÓïÑÔ£¬SonarQube ¶¼ÌṩԴÁË´úÂëµÄ¾²Ì¬·ÖÎö¹¦ÄÜ£»

¶ÔÓÚÄ³Ð©ÌØ¶¨µÄ±à³ÌÓïÑÔ£¬SonarQube ÌṩÁ˶ԱàÒëºó´úÂëµÄ¾²Ì¬·ÖÎö¹¦ÄÜ£¬±ÈÈç java ÖÐµÄ class file ºÍ jar ºÍ C# ÖÐµÄ dll file µÈ£»

¶ÔÓÚÄ³Ð©ÌØ¶¨µÄ±à³ÌÓïÑÔ£¬SonarQube »¹¿ÉÒÔÌṩ¶ÔÓÚ´úÂëµÄ¶¯Ì¬·ÖÎö¹¦ÄÜ£¬±ÈÈç java ºÍ C# Öеĵ¥Ôª²âÊÔµÄÖ´Ðеȡ£

SonarQube ƽ̨µÄÕûÌå¼Ü¹¹Èçͼ 2 Ëùʾ£º

ͼ 2. SonarQube µÄ·þÎñ¼Ü¹¹

Ô¶³Ì¿Í»§»ú¿ÉÒÔͨ¹ý¸÷ÖÖ²»Í¬µÄ·ÖÎö»úÖÆ£¬´Ó¶ø½«±»·ÖÎöµÄÏîÄ¿´úÂëÉÏ´«µ½ SonarQube server ²¢½øÐдúÂëÖÊÁ¿µÄ¹ÜÀíºÍ·ÖÎö£¬SonarQube »¹»áͨ¹ý Web API ½«·ÖÎöµÄ½á¹ûÒÔ¿ÉÊÓ»¯¡¢¿É¶ÈÁ¿µÄ·½Ê½Õ¹Ê¾¸øÓû§¡£

SonarQube3.6 µÄ°²×°

Èí¼þ¼°Ó²¼þµÄÒªÇó

SonarQube3.6 µÄ°²×°Í¨³£ÐèÒªÂú×ãÒ»¶¨µÄÈíÓ²¼þÌõ¼þ£¬¾ßÌåÒªÇóÈçÏÂËùʾ£º

1. Server 񻂗

Web server ×îÉÙÐèÒª 500MB µÄÄÚ´æ¿Õ¼ä£¬ÍƼöÄÚ´æ¿Õ¼ä´óС 2GB¡£Sonar ÔÚ½øÐдúÂëÖÊÁ¿·ÖÎöʱ£¬Í¨³£´óԼÿ 1 KLOC ÐèÒª´æ´¢ 350KB ×óÓÒµÄÊý¾Ý£¬ËùÒÔÒª¾¡Á¿Îª SonarQube3.6 µÄ web server Ìṩ´óµÄÄÚ´æ¡£

2. Database 񻂗

¾¡¹Ü SonarQube3.6 ±¾Éí×Ô´øÇ¶ÈëµÄ Derby Êý¾Ý¿â£¬µ«ÊÇÓÉÓÚ Derby ±È½Ï¼òµ¥£¬ËùÒÔÔÚÉú²ú»·¾³ÖÐÇ¿ÁÒÍÆ¼ö°²×°ÏàÓ¦µÄÆóÒµ°æÊý¾Ý¿â£¬SonarQube3.6 Ö§³ÖµÄÊý¾Ý¿â°üÀ¨£º MySQL 5.x+¡¢Oracle10g+¡¢PostgreSQL 9.x ºÍ MS SQLServer 2005 and 2008£¬ÍƼöʹÓà MySQL¡£Ä¿Ç° SonarQube3.6 »¹²»Ö§³Ö DB2£¬µ«ÔÚºóÐø°æ±¾ÖпÉÄÜ»áÌṩ¶Ô DB2 µÄÖ§³Ö¡£

3. Browser 񻂗

SonarQube3.6 Ö§³Ö´ó¶àÊýµÄä¯ÀÀÆ÷£¬°üÀ¨ Firefox¡¢Internet Explorer 7.x and 8.x and chromed µÈ£¬ÍƼöʹÓà Firefox¡£

°²×°²½Öè

SonarQube3.6 µÄ°²×°°ü¿ÉÒÔ´Ó SonarQube µÄ¹Ù·½ÍøÕ¾ (http://www.sonarqube.org/) ÏÂÔØ¡£×ܵÄÀ´Ëµ£¬ËüµÄ°²×°¹ý³Ì¿ÉÒÔ·ÖΪÒÔÏÂÁù¸ö²½Ö裺

1. »ñÈ¡¹«Ë¾µÄ·¨ÂÉÊÚȨ

±¾²½ÖèÖ÷Ҫȡ¾öÓÚ¹«Ë¾µÄ¹æ¶¨£¬Èç¹û¹«Ë¾¶ÔÓÚÔÚ±¾¹«Ë¾»úÆ÷Éϰ²×°µÄÈí¼þÓз¨ÂÉÒªÇó£¬ÄÇô¾¡¹Ü SonarQube ÊÇ¿ªÔ´µÄ£¬µ«ÊÇÒ²»¹ÊÇÒª»ñµÃ¹«Ë¾Ïà¹Ø·¨Âɲ¿ÃŵÄÊÚȨ£¬È»ºóÔÙ½øÐа²×°¡£

2. ´´½¨Êý¾Ý¿â

´´½¨Êý¾Ý¿âʱ£¬°´ÕÕÏàÓ¦Êý¾Ý¿âµÄ°²×°ËµÃ÷½øÐа²×°¼´¿É£¬°²×°³É¹¦ºó£¬ÐèÒªÊÖ¶¯´´½¨Ò»¸öÃûΪ¡°sonarqube¡±µÄÓû§ºÍÒ»¸ö empty schema --¡°sonarqube¡±£¬²¢¸³Óè¸ÃÓû§ÔÚÏàÓ¦ schema É쵀 create¡¢update ºÍ delete ¶ÔÏóµÄȨÏÞ£¬Í¬Ê±Êý¾Ý¿âµÄ×Ö·û¼¯É趨Ϊ¡°UTF-8¡±£¬Ê¾ÀýµÄ sql Óï¾äÈçÏ£º

µã»÷²é¿´´úÂëÇåµ¥

3. °²×° Sonar µÄ·þÎñÆ÷

½«ËùÏÂÔØµÄ SonarQube3.6 ѹËõ°ü½âѹ¼´¿É£¬×¢ÒâÒªÓëËùÔڵIJÙ×÷ϵͳƽ̨ƥÅä¡£

4. ÅäÖÃÊý¾Ý¿â

Èç¹ûûÓÐʹÓà sonarQube3.6 ×Ô´øµÄ derby Êý¾Ý¿â£¬Ôò´ËʱÐèÒª±à¼­ sonarqube3.6 ½âѹĿ¼ \conf\sonar.properties Îļþ£¬¶ÔÊý¾Ý¿âµÄ·ÃÎʲÎÊý½øÐÐÅäÖá£

Êý¾Ý¿âÅäÖÃÏîºÍÅäÖÃʾÀýÈçͼ 3 ºÍͼ 4 Ëùʾ£º

ͼ 3. Sonar.properties ÎļþÖеÄÊý¾Ý¿âÅäÖÃÏî

ͼ 4. Sonar.properties ÎļþÖÐµÄ MySQL Êý¾Ý¿âÅäÖÃ

Èç¹ûÊÇ Oracle Êý¾Ý¿â£¬ÔòÐèÒª½« JDBC µÄ driver ¿½±´µ½ sonarqube3.6 ½âѹĿ¼ \extensions\jdbc-driver\[your database]¡£´ËÍ⣬¶ÔÓÚÆäËûËùÖ§³ÖµÄÊý¾Ý¿âµÄ driver£¬sonarqube Ò²ÒѾ­Ìṩ¡£

5. Æô¶¯ SonarQube3.6 ·þÎñÆ÷

Æô¶¯ SonarQube3.6 ·þÎñÆ÷µÄ·½·¨È¡¾öÓÚËùʹÓõݲװƽ̨ºÍ webserver¡£

³£¼ûµÄÆô¶¯·½Ê½ÓÐͼ 5 ËùʾµÄ¼¸ÖÖ£º

ͼ 5. SonarQube Æô¶¯·½Ê½

6. ²å¼þÏÂÔØÓë°²×°

SonarQube3.6 ·þÎñÆ÷³É¹¦Æô¶¯ºó£¬µÇ½ĬÈ쵀 webserver:? IP:9000/ £¬ÆäÖÐ IP Ϊ sonarqube3.6 °²×°µÄ·þÎñÆ÷ÍøÂçµØÖ·£¬Óû§ÃûºÍÃÜÂëΪĬÈ쵀 admin/admin¡£µÇ½³É¹¦ºóµã»÷ configuration ²Ëµ¥°´Å¥£¬È»ºóÑ¡Ôñ update center ½øÐвå¼þµÄÏÂÔØÓë°²×°£¬Èçͼ 6 Ëùʾ£º

ͼ 6. Plugin ÏÂÔØÓë°²×°

×¢Ò⣺Èç¹û sonarqube server ËùÔڵĻúÆ÷²»ÄÜ·ÃÎÊÍâÍø£¬ÄÇô´Ëʱ¾ÍÐèÒªÏÈÔÚÁíһ̨Äܹ»·ÃÎÊÍâÍøµÄ»úÆ÷ÉÏÏÂÔØËùÐèµÄËùÓвå¼þ£¬È»ºó½«ÏÂÔØµÄ²å¼þ¿½±´µ½ sonarqube server ËùÔÚ»úÆ÷µÄ sonarqube3.6 ½âѹĿ¼ \extensions\plugins Ŀ¼ÄÚ£¬È»ºóÖØÆô Sonarqube3.6¡£ÏÂÔØ Sonarqube ²å¼þµÄ¹Ù·½µØÖ·Îª£ºhttp://docs.codehaus.org/display/SONAR/Plugin+Library/£¬ÏÂÔØÊ±Ðè×¢Òâ²å¼þ°å±¾Óë sonarqube3.6 µÄ¼æÈÝÎÊÌâ¡£

SonarQube3.6 ´úÂëÖÊÁ¿·ÖÎö

µ±Ê¹Óà SonarQube3.6 ¶Ôijһ¸öÏîÄ¿½øÐдúÂëÖÊÁ¿¹ÜÀíʱ£¬Í¨³£¿ÉÒÔ²ÉÓÃÈýÖÖ²»Í¬µÄ·½·¨À´·¢Æð´úÂë·ÖÎö£¬·Ö±ðΪ Analyzing with SonarQube Runner¡¢£¬Analyzing with SonarQube Ant Task ºÍ Analyzing with Maven ·½·¨¡£ÕâÈýÖÖ·½·¨µÄÖ÷񻂿±ðÊÇ , ËüÃÇ·Ö±ðÊÊÓÃÓÚ²»Í¬¼Ü¹¹ºÍ×éÖ¯ÐÎʽµÄÏîÄ¿£¬²¢ÇÒÆäÏàÓ¦µÄÅäÖÃÎļþµÄд·¨Ò²²»¾¡Ïàͬ¡£

ÏÂÃæ½«·Ö±ð½éÉÜÕâÈýÖÖ·½Ê½¡£

Analyzing with SonarQube Runner

ͨ³£ÎÒÃÇ»áÍÆ¼öʹÓà SonarQube Runner ÕâÖÖ·½Ê½£¬ÒòΪ¸Ã·½·¨ÊÊÓÃÓÚËùÓв»Í¬¼Ü¹¹µÄÏîÄ¿£¬°üÀ¨Ã»ÓÐʹÓÃÈκÎÔ´´úÂë¹ÜÀí¹¤¾ßµÄÏîÄ¿ÐÎʽ£¬ÒÔ¼°Ê¹Óø÷ÖÖ²»Í¬´úÂë¹ÜÀí¹¤¾ß£¨SVN¡¢Git¡¢ClearCase µÈ£©ºÍ±àÒ빤¾ß£¨ant£¬maven£©µÄÏîÄ¿ÐÎʽ£¬Ëü¶¼Äܹ»ÊÊÓá£ÔÚʹÓø÷½Ê½½øÐзÖÎöʱ²½ÖèÈçÏ£º

1. Ê×ÏÈÐèÒªÏÂÔØÓë SonarQube3.6 Server ¼æÈÝµÄ sonar-runner ¿Í»§¶Ë²¢¶ÔÆä½øÐнâѹ£»ÏÂÔØµØÖ·Îªhttp://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.3/sonar-runner-dist-2.3.zip

2. ÔÚ±»·ÖÎöÏîÄ¿´úÂëµÄ¸ùĿ¼Ï£¬´´½¨²¢ÅäÖà sonar-project.properties£¬ÄÚÈÝÈçͼ 7 Ëùʾ£º

ͼ 7. Sonar-project.properties ÎļþʾÀý

ͼ 7 ÖÐµÄ sonar.projectName ΪÏîÄ¿ÔÚ sonar server ÉÏÏÔʾµÄÃû³Æ£¬ÆäÖµÒªÇóΨһ¡£sonar.source ÊÇÓÃÓÚÖ¸¶¨´ý·ÖÎöµÄ´úÂëλÖõġ£sonar.language ÓÃÓÚÖ¸¶¨´ý·ÖÎöµÄÏîÄ¿´úÂëÓïÑÔ¡£Èç¹ûÏîÄ¿°üº¬¶à¸öÄ£¿é£¬Ôò¸ÃÅäÖÃÎļþÓ¦°´ÕÕͼ 8 Ëùʾ±à¼­£º

ͼ 8. ¶àÄ£¿éÏîÄ¿µÄ Sonar-project.properties ʾÀý

3. ÔÚ½âѹµÄ soanr-runner ¿Í»§¶ËµÄ sonar-runner\config Ŀ¼Ï£¬±à¼­ sonar-runner.properties Îļþ , ʾÀýÈçͼ 9 Ëùʾ£º

ͼ 9. Sonar-runner.properties ʾÀý

Çë×¢Ò⣬ͼ 7¡¢Í¼ 8 ÒÔ¼°Í¼ 9 ÖеÄÏà¹ØÅäÖÃÏî ( Èç host.url ºÍ jdbc.url µÈ ) ¶¼ÒªÓëͼ 4 µÄ sonar.properties ÎļþÖеÄÏà¹ØÅäÖÃÏî±£³ÖÒ»Ö¡£

4. ´ò¿ªÃüÁîÐУ¬ÔÚ±»·ÖÎöµÄÏîĿĿ¼Ï , ÔËÐÐ sonar-runner ÃüÀí·ÖÎöÏîÄ¿´úÂë¡£

Analyzing with SonarQube Ant Task

±¾·½·¨Ö÷ÒªÊÊÓÃÓÚʹÓà Ant ¹¤¾ß½øÐй¹½¨¡¢±àÒë¡¢´ò°üºÍ²âÊÔµÄÏîÄ¿£¬Ê¹Óà Ant Task ·ÖÎö´úÂëʱ£¬²½ÖèÈçÏ£º

1. ÏÂÔØ SonarQube Ant Task ²¢°²×°£¬ÏÂÔØµØÖ·ÈçÏ£º http://repository.codehaus.org/org/codehaus/sonar-plugins/sonar-ant-task/2.1/sonar-ant-task-2.1.jar

2. ÔÚ±»·ÖÎöÏîÄ¿´úÂëµÄ¸ùĿ¼Ï£¬´´½¨²¢ÅäÖà build.xml Îļþ¡£Ê¾ÀýÈçͼ 10 Ëùʾ£º

ͼ 10. Build.xml ÅäÖÃʾÀý

Build.xml ÖеÄÏà¹ØÅäÖÃÏî ( Èç jdbc.username ºÍ jdbc.url µÈ ) ÒªÓëͼ 4 ËùʾµÄ sonar.properties ÎļþÖеÄÏà¹ØÅäÖÃÏî±£³ÖÒ»Ö£»Í¬Ê±¿ÉÒÔ¿´³ö£¬ÔÚ build.xml ÎļþÖмȰüº¬Á˱»·ÖÎöÏîÄ¿´úÂëµÄÏà¹ØÐÅÏ¢£¬Ò²°üº¬ÁËÆäËùÁ¬½ÓµÄ¶ÔÓ¦ SonarQube Server µÄÐÅÏ¢¡£

3. ÔÚÃüÁîÐÐÖУ¬Çл»µ½´úÂë¸ùĿ¼£¬Ê¹ÓÃÃüÁî ¡°ant sonar¡±½øÐдúÂë·ÖÎö¡£

Analyzing with Maven

µ±ÏîĿʹÓà Maven ¹¤¾ß¹ÜÀíºÍ¹¹½¨Ê±£¬Ôò¸ÃÏîÄ¿¾ÍÊÊÓÃÓÚ±¾·½·¨¡£Ê¹Óà Maven ·ÖÎö´úÂëʱ£¬²½ÖèÈçÏ£º

1. ÏÂÔØ¡¢°²×°²¢ÅäÖà Maven£¬ÅäÖÃÎļþΪ setting.xml£¬ÅäÖÃÈçͼ 11 Ëùʾ£º

ͼ 11. Setting.xml ÅäÖÃʾÀý

Setting.xml ÖеÄÏà¹ØÅäÖÃÏî ( Èç host.url ºÍ jdbc.url µÈ ) ÒªÓëͼ 4 ËùʾµÄ sonar.properties ÎļþÖеÄÏà¹ØÅäÖÃÏî±£³ÖÒ»Ö£¬Ö÷ÒªÓÃÓÚÅäÖÃÆäËùÁ¬½ÓµÄ SonarQube ·þÎñÆ÷µÄÐÅÏ¢¡£

2. ÔÚ´ý·ÖÎöÏîÄ¿´úÂëµÄ¸ùĿ¼Ï£¬´´½¨²¢ÅäÖà prom.xml Îļþ£¬Ê¾ÀýÈçͼ 12 Ëùʾ£¬¸ÃÅäÖÃÎļþÓÃÓÚÉ趨´ø·ÖÎö´úÂëµÄÏà¹ØÐÅÏ¢£¬°üÀ¨´úÂëĿ¼µÈ¡£

ͼ 12. Prom.xmlÅäÖÃʾÀý

3. ´ò¿ªÃüÁîÐд°¿Ú£¬Çл»µ½ÏîÄ¿µÄ¸ùĿ¼£¬È»ºóÖ´ÐС°mvn sonar:sonar¡±À´·ÖÎöÏîÄ¿´úÂëµÄÖÊÁ¿¡£

С½á

×ܵÄÀ´ËµÕâÈýÖÖ·½Ê½Óв»Í¬µÄÕë¶ÔÐÔ£¬¾ßÌåʹÓÃÄÄÒ»ÖÖ·½Ê½Òª¸ù¾ÝÏîÄ¿µÄʵ¼ÊÇé¿öÀ´Áé»îµÄÅжϡ£

SonarQube3.6 ´úÂëÖÊÁ¿·ÖÎö½á¹û½âÎö

µ±ÏîÄ¿´úÂë±»³É¹¦·ÖÎöÍê³Éºó£¬SonarQube Server »á½«·ÖÎöµÄ½á¹û´æ´¢ÔÚÏàÓ¦µÄÊý¾Ý¿âÖУ¬²¢ÒÔ±¨¸æµÄÐÎʽ½«·ÖÎö½á¹ûÔÚ webserver ÖÐչʾ¸øÓû§¡£

ÏÂÃæ½«ÒÔÒ»¸öÕæÊµÏîÄ¿´úÂëµÄ·ÖÎö½á¹ûΪÀý£¬¶ÔÆä¸÷Ïî·ÖÎöÖ¸±ê½øÐмòÒª½éÉÜ¡£

ͼ 13.·ÖÎö½á¹ûʾÀý-01

ͼ 13 Ϊ SonarQube3.6 µÄ Project Dashboard£¬ËüÊDz鿴ÈÎÒâÏîÄ¿·ÖÎö½á¹ûµÄÈë¿Ú£¬Õ¹Ê¾Á˸ÃÏîÄ¿¸÷ÏîÖ¸±ê×ܵķÖÎöÊý¾Ý½á¹û£¬ÆäÖаüÀ¨ÏîÄ¿µÄÖØ¸´ÂÊ£¬×¢Ê͵ıÈÀý£¬µ¥Ôª²âÊÔ¸²¸ÇÂÊÒÔ¼° Issue µÄ±ÈÀýµÈ¡£Í¨¹ý Dashboard ¾Í¿ÉÒÔ¶ÔÏîÄ¿×ÜÌåµÄÖÊÁ¿Çé¿öÓÐÒ»¸öÈ«¾ÖÐÔµÄÈÏʶ¡£

Ñ¡Ôñͼ 13 Öеĸ÷Ïî·ÖÎöÖ¸±ê£¬¾Í¿ÉÒÔ¾ßÌåµÄÈ¥²é¿´¸ÃÏîÄ¿ÔÚÕâÒ»Ö¸±êÉϵÄÏêϸÇé¿ö¡£

ÏÂÃæÒÔÖØ¸´ÂÊºÍ Issue ΪÀý£¬¶ÔÆä·ÖÎö½á¹û½øÐнâÎö¡£

1. Ñ¡Ôñͼ 13 ÖеÄÖØ¸´ÂÊÖ¸±ê£¬½«»áµÃµ½Í¼ 14 ËùʾµÄ¹ØÓÚÖØ¸´´úÂëµÄÏêϸ·ÖÎö½á¹û£º

ͼ 14. ·ÖÎö½á¹ûʾÀý-02

ͼ 14 ÖеÄÇøÓò A չʾÁËÕû¸öÏîÄ¿ÖвúÉú´úÂëÖØ¸´µÄËùÓÐÄ£¿é¼°ÆäÖØ¸´µÄ´úÂëÐÐÊý¡£Ñ¡ÔñÇøÓò A ÖеÄÈÎһij¿é£¬ÔÚÇøÓò B ÖÐÔò½«ÏÔʾ¸ÃÄ£¿éϲúÉú´úÂëÖØ¸´µÄËùÓÐÎļþ£»Ñ¡ÔñÇøÓò B ÖеÄijһÎļþ£¬ÔòÔÚÏ·½ÇøÓò C ÖлáÏÔʾÏîÄ¿ÖÐÓë¸ÃÎļþ²úÉú´úÂëÖØ¸´µÄËùÓÐÎļþ£¬Í¬Ê±»¹»áÏÔʾ¸ÃÎļþÏàÓ¦µÄÖØ¸´´úÂëµÄÄÚÈÝ¡£ÕâÑùµÄ·ÖÎö½á¹û£¬¿ÉÒÔÓÐЧµØÖ¸µ¼ÏîÄ¿×é³ÉÔ±½øÐÐÏîÄ¿´úÂëÓÅ»¯²¢½µµÍÖØ¸´ÂÊ¡£

2. Ñ¡Ôñͼ 13 ÖÐµÄ Issues Ö¸±ê£¬»áµÃµ½Í¼ 15 ËùʾµÄ¹ØÓÚÏîÄ¿ Issue µÄÏêϸ·ÖÎö½á¹û£º

ͼ 15. ·ÖÎö½á¹ûʾÀý-03

ͼ 15 ÖеÄÇøÓò A չʾÁËÕû¸öÏîÄ¿Öв»Í¬ÑÏÖØ³Ì¶ÈµÄ Issues ÊýÁ¿£»ÇøÓò B ÔòÏÔʾÁËÏîÄ¿´úÂë¾ßÌåËùÎ¥·´µÄ¸÷ÖÖ±àÂë¹æÔòÒÔ¼°Î¥·´¹æÔòµÄ´ÎÊý£»µã»÷ÇøÓò B ÖÐÏàÓ¦µÄ¹æÔò£¬ÔÚÇøÓò C ÖоͻáÏÔʾ¸ÃÏîÄ¿ÖÐÎ¥·´ÏàÓ¦¹æÔòµÄËùÓÐÄ£¿é¼°ÆäÎ¥·´¹æÔòµÄ´ÎÊý£»Ñ¡ÔñÇøÓò C ÖеÄijһģ¿é£¬ÔÚÇøÓò D ÖоͻáÏÔʾ¸ÃÄ£¿éÄÚÎ¥·´¹æÔòµÄËùÓÐÎļþ£»Èç¹ûÒª²é¿´´úÂëÎļþµ½µ×ÈçºÎÎ¥·´ÁËijһ¹æÔò£¬Ö»ÐèÔÚÇøÓò D Öеã»÷ÏàÓ¦µÄÎļþ£¬Ôò»áÏÔʾÈçͼ 16 ËùʾµÄÏêϸÇé¿ö¡£

ÔÚͼ 16 ÖУ¬¿ÉÒÔ¿´µ½Î¥·´ÏàÓ¦¹æÔòµÄ¾ßÌå´úÂ룬ÓúìÉ«±ê³ö£»µã»÷ËùÎ¥·´µÄ¾ßÌ广Ôò£¬SonarQube Ôò»á½âÊÍ´úÂëÎ¥·´¹æÔòµÄ¾ßÌåÔ­Òò£¬²¢¸ø³öÏàÓ¦µÄ½â¾ö·½°¸ÒÔ¹©²Î¿¼£¬Õâ¶ÔÓÚÏîÄ¿×é³ÉÔ±¶¨Î»ÎÊÌâºÍ½â¾öÎÊÌâ¶¼ÓкܴóµÄ°ïÖú¡£

ͼ 16. ·ÖÎö½á¹ûʾÀý-04

Æäʵ SonarQube »¹ÌṩÁ˺ܶàÆäËû·½ÃæµÄÖÊÁ¿Î¬¶È·ÖÎö£¬È縴ÔÓ¶È£¬²âÊÔ¸²¸ÇÂʵȣ¬ÕâÀï¾Í²»ÔÙÌÖÂÛÆä¾ßÌåµÄ²ÎÊýϸ½ÚÁË¡£±¾²¿·ÖÖ¼ÔÚ´ÓÕûÌåÉ϶ԴúÂëµÄÖÊÁ¿·ÖÎö½á¹û½øÐиÅÀ¨£¬²¢½éÉÜÈçºÎ²é¿´ÏàÓ¦µÄÖÊÁ¿·ÖÎö½á¹û£¬¶ø¹ØÓÚ¾ßÌåÈçºÎÀûÓø÷¸ö·ÖÎö²ÎÊýµÄÖµÀ´Î¬»¤¡¢¸ÄÉÆ´úÂëÖÊÁ¿£¬»áÔÚºóÐøÏµÁÐÖÐÓë´ó¼Ò·ÖÏí¡£

SonarQube3.6 ʵ¼ÊʹÓÃÖÐÓöµ½µÄÎÊÌâ¼°½â¾ö·½°¸

ÔÚʹÓà SonarQube3.6 ·ÖÎö´úÂëÖÊÁ¿Ê±£¬Í¨³£»áÓöµ½ÒÔÏÂÈý¸öÎÊÌ⣬ÔÚʵ¼ÊʹÓÃÖÐҪעÒ⣺

1. find-bug.jar °æ±¾ÎÊÌâ

ÓÉÓÚÔÚ sonarQube3.3.1 ֮ǰ£¬ ÆäËùĬÈÏʹÓÃµÄ find-bug µÄ°æ±¾Îª 2.0.0£¬¸Ã°æ±¾»áµ¼Ö´úÂë·ÖÎöʱ³öÏÖʱ¼ä×Ö·û´®µÄ¸ñʽ½âÎö´íÎó£¬Òò´ËÔÚ°²×° sonarQube3.6 ºó£¬Îñ±ØÒªÈ·±£ÆäËù°²×°µÄ²å¼þ find-bug.jar µÄ°æ±¾Îª 2.0.1¡£

2. ÈÏÖ¤ÊÚȨ´íÎó

ÓÉÓÚÔÚ sonarqube3.4 ֮ǰµÄ°æ±¾ÖУ¬Á¬½Ó sonar server ÊDz»ÐèÒª authorized£¬¶øÔÚ 3.6 °æ±¾ÖÐÔòÐèÒª authorized£¬ÊÚȨÎÊÌâ¿ÉÒÔͨ¹ýÁ½ÖÖ·½·¨½â¾ö£º

ÔÚ sonar.properties ºÍ sonar-runner.properties ÖÐͬʱָ¶¨ÏàͬµÄÓû§ÃûºÍÃÜÂë¡££¨sonar.login= sonar.password=£©

ÔÚ sonar.properties ºÍ sonar-runner.Properties ·Ö±ðÇ¿ÖÆÉ趨²»ÐèÒª½øÐзÃÎÊÊÚȨ£¬¼´ sonar.forceAuthentication=false

3. Ô´´úÂëµÄ±àÂë¸ñʽ´íÎó

ÓÉÓÚ find-bug.jar 2.0.1 ºÍ sonarQube3.6 server µÄĬÈϱàÂë¸ñʽΪ GBK£¬Òò´Ë±ØÐëÈÏÕæµØ´¦ÀíÔ´´úÂëµÄ±àÂë¸ñʽ£¨¼´ sonar.sourceEncoding=UTF-8/GBK/......£©£¬±ÜÃâÒò±àÂë¸ñʽ²»¼æÈݶøµ¼ÖµÄÎÊÌâ¡£

½áÊøÓï

´úÂëÖÊÁ¿¹ÜÀí¶ÔÌá¸ßÏîÄ¿ÖÊÁ¿ÒâÒåÖØ´ó¡£±¾ÎĽéÉÜÁË SonarQube µÄ¹¤×÷Ô­Àí£¬²¢´ÓÏîĿʵսµÄ½Ç¶È½²½âÁËʹÓà SonarQube3.6 ½øÐÐÏîÄ¿´úÂëÖÊÁ¿¹ÜÀíµÄÁ÷³ÌºÍ×¢ÒâÊÂÏϣÍûÄܹ»¸øÊ¹Óà SonarQube µÄ¶ÁÕßÌṩÓмÛÖµµÄ²Î¿¼¡£

   
3777 ´Îä¯ÀÀ       27
 
Ïà¹ØÎÄÕÂ

»ùÓÚÄ£Ð͵ÄÈí¼þÖÊÁ¿ÆÀ²â
Èí¼þÖÊÁ¿±£ÕÏÈ«Á÷³Ì
ÈçºÎ¿ªÕ¹Èí¼þÏîÄ¿µÄÖÊÁ¿¹ÜÀí
ÖÊÁ¿±£ÕÏÐÂÊֶΣ¬Ð¯³Ì»Ø¹é²âÊÔÆ½Ì¨Êµ¼ù
 
Ïà¹ØÎĵµ

ϵͳÖÊÁ¿±£Ö¤Êµ¼ù
Èí¼þÖÊÁ¿¹ÜÀíºÍÖÊÁ¿±£Ö¤
ÖÊÁ¿¹ÜÀíÌåϵ֮Ñз¢Æª
APQP²úÆ·¿ª·¢Á÷³ÌÓë¹ÜÀí(Æû³µÐÐÒµ)
 
Ïà¹Ø¿Î³Ì

Èí¼þ¿ª·¢¹ý³ÌÖеÄÖÊÁ¿¹ÜÀíʵ¼ù
×éÖ¯¼¶ÖÊÁ¿¹ÜÀí·½·¨Óëʵ¼ù
²úÆ·ÖÊÁ¿¹ÜÀí·½·¨Óëʵ¼ù
ÖÊÁ¿¹ÜÀí×î¼Ñʵ¼ù
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

ÂÛÈí¼þÏîÄ¿ÖÊÁ¿¹ÜÀí
Èí¼þÖÊÁ¿±£Ö¤£¨SQA£©
ÓÐЧµÄÈí¼þÖÊÁ¿¹ÜÀí
ÆÀÉóµÄÖ÷ÒªÓŵã
ͬÐÐÆÀÉó³£¼ûÎÊÌâ½â´ð
Èí¼þ²âÊÔ¹ý³ÌºÍÖÊÁ¿µÄ¶ÈÁ¿


¿ª·¢¹ý³ÌÖеÄÖÊÁ¿¹ÜÀí
»ùÓÚȱÏݵÄÖÊÁ¿¹ÜÀí
Èí¼þÖÊÁ¿¹ÜÀí
CMMI2Èí¼þÖÊÁ¿±£Ö¤


ǶÈëʽÈí¼þ¿ª·¢¹ý³ÌÖеÄÖÊÁ¿¹ÜÀí
±±¾© Èí¼þÖÊÁ¿¹ÜÀí
³ÏÒã¿Æ¼¼ ÖÊÁ¿¹ÜÀíÆÀ¼ÛºÍÃô½Ý¿ª·¢
Schneider Èí¼þÏîÄ¿¹ÜÀí+Èí¼þÖÊÁ¿
×°¼×±ø¹¤³ÌѧԺ Èí¼þÖÊÁ¿¹ÜÀí
¸£ÅµÒƶ¯ Èí¼þÅäÖùÜÀíÓëÖÊÁ¿¹ÜÀí
Öйúƽ°²±£ÏÕ Èí¼þÖÊÁ¿¹ÜÀí