SonarQube Server 설치하기.


안녕하세요. 소심비형입니다.

이번에는 Code Analysis인 SonarQube를 설치해보도록 하겠습니다.

무료 오픈소스 중에서 정적 코드 분석툴로는 소나가 가장 유명하죠? 물론, Visual Studio에도 정적 코드를 분석해서 보여주는 여러가지 기능들이 포함되어 있습니다. 그러나, SonarQube와 비교해보면 아직은 많이 부족하지 않나 생각됩니다.

정적 분석 및 동적 분석 툴에 관심이 있으시면 아래 링크에서 추가적인 정보을 얻을 수 있습니다.

각 언어별 (Programing Language) 무료, 유료 툴들이 정리되어 있네요.

http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis

설치…

우선 Java를 먼저 설치해야 합니다. 만약, 자신의 PC에 Java가 설치되어 있다면 이 부분은 건너 뛰어도 됩니다.

1-1. Java 설치하기

아래의 링크를 통해서 최신 버전의 Java를 설치하세요.

http://java.com/ko/download/

이미지 13.png

 

1-2. 다운로드 폴더로 이동해서 JavaSetup7u45.exe 실행합니다. (현재 시점의 Java와 Version이 다를 수 있습니다.)

이미지 15.png

 

1-3. 가급적이면 대상 폴더는 변경하지 않는게 좋습니다. 만약 대상 폴더를 변경 한다면, 윈도우의 환경 변수도 같이 수정해야 합니다. 대상 폴더 변경에 체크하지 않고 설치를 클릭하세요.

그림30.png

 

1-4. 설치가 진행 중입니다. 잠시 기다립니다^^

그림31.png

 

1-5. 계속 진행중입니다… -_-

그림32.png

1-6. 닫기를 클릭하여 설치를 완료합니다.

그림33.png

 

 

 

2-1. SonarQube 설치하기.

http://www.sonarqube.org/ ◀링크에서 SonarQube를 다운로드 받습니다.

이미지 16.png

 

 

 

 

2-2. 아래와 같이 SonarQube와 Sonar Runner 둘 다 다운로드 합니다.

이미지 18.png

 

2-3. 다운로드 받은 sonarqube-4.4.1.zip을 압축 해제한 후 임의의 폴더에 복사합니다.

위와 같이 sonar-runner-dist-2.4.zip도 압축 해제한 후 임의의 폴더에 복사합니다.

SonarQube와 Sonar runner를 같은 폴더에 복사하는게 좋습니다. 관리 차원에서…

(저는 소나큐브 4.4.1, 소나러너 2.4를 설치했습니다.)

이미지 19.png

 

2-4. SonarQube 설정 하기.

아래의 경로로 이동하여 sonar.properties를 편집합니다.

이미지 20.png

 

2-5. 아래와 같이 설정을 변경 하세요.

#아래 항목은 Database에 접속하기 위한 아이디와 비밀번호입니다. 자신의 MSSQL Server의 접속 계정을 넣으세요.

sonar.jdbc.username=sa

sonar.jdbc.password=sa

#Database 연결 정보를 설정합니다.

sonar.jdbc.url:jdbc:sqlserver://[자신의 계정]\\SQLEXPRESS;databaseName=Sonar

sonar.jdbc.driverClassName:com.microsoft.sqlserver.jdbc.SQLServerDriver

sonar.jdbc.validationQuery:select 1

sonar.jdbc.dialect= mssql

#Connection pool을 설정합니다.

sonar.jdbc.maxActive=20

sonar.jdbc.maxIdle=5

sonar.jdbc.minIdle=2

sonar.jdbc.maxWait=5000

sonar.jdbc.minEvictableIdleTimeMillis=600000

sonar.jdbc.timeBetweenEvictionRunsMillis=30000

#웹 서버 주소를 설정합니다.

sonar.web.host=127.0.0.1

#웹 서버의 포트를 설정합니다.

sonar.web.port=9000

#Notifications 설정합니다.

sonar.notifications.delay=60

2-6. Database 설정 하기.

시작 > 모든 프로그램 > Microsoft SQL Server 2012 > SQL Server Management Studio 실행

아래와 같이 로컬 데이타베이스로 접속합니다. (각 사용자의 환경에 따라 다를 수 있습니다.)

이미지 21.png

 

2-7. Database에서 우 클릭 후 새 데이터베이스를 선택합니다.

이미지 23.png

2-8. Database 이름에 SONAR를 입력한 후 확인을 클릭합니다.

이미지 24.png

데이타베이스가 정상적으로 생성되었을 겁니다. MSSQL Management Studio를 닫지 말고 다음 스텝을 먼저 진행합니다.

다음 스텝을 완료한 후 다시 이곳에서 설정을 변경해야 합니다.

 

 

2-9. SonarQube 설치 하기.

C:\Program Files (x86)\sonarqube-4.4.1\sonarqube-4.4.1\extensions\jdbc-driver\mssql 경로로 이동합니다.

안에 있는 기존 파일들을 모두 삭제합니다.

그리고 홈페이지 자료실에 등록되어 있는 sqljdbc4.jar 파일을 다운로드 하여 위의 폴더에 복사합니다.

이미지 25.png

 

2-10. SonarQube Database Tables 생성 및 Web Server 실행.

C:\Program Files (x86)\sonarqube-4.4.1\sonarqube-4.4.1\bin\windows-x86-64 경로에 있는 아래 두개의 배치 파일을 실행합니다. (사용중인 OS가 Windows 7 이상이라면, 관리자 모드로 실행해야 합니다.)

InstallNTService.bat

StartSonar.bat (이 Console창은 닫으면 안됩니다. 이 창을 닫으면 Sonar Server도 중지됩니다.)

그림34.png

 

2-11. 위의 Database에서 생성한 SONAR의 Tables를 확장합니다.

이미지 26.png

 

2-12. SONAR 데이타베이스의 properties 테이블의 text_value필드 형식을 ntext로 변경 후 저장합니다.

이미지 27.png

2-13. SONAR 데이타베이스의 snapshot_source 테이블의 data 필드 형식을 ntext로 변경 후 저장합니다.

이미지 28.png

 

 

 

혹시라도, 위와 같이 데이터 형식을 변경한 후 저장할 때, 에러 메시지가 뜨면서 저장할 수 없다면 아래와 같이 옵션을 변경하고 다시 시도하세요.

도구 > 옵션 > 디자이너에서 “테이블을 다시 만들어야 하는 변경 내용 저장 안 함” 체크 해제.

이미지 31.png

2-14. http://localhost:9000 접속하여 정상적으로 SonarQube가 동작하는지 확인합니다.

아래 이미지는 NG Framework의 소스를 분석한 화면입니다. 여러분들은 빈 화면만 보일겁니다.

이미지 29.png

 

시간이 너무 늦어서 오늘은 여기서 끝내야 할거 같네요^^

다음에는 이어서 Sonar Runner를 설치하고 관련 플러그인들을 적용해 보겠습니다.

혹시 잘 안되시거나 궁금하신점이 있으시면 질문 게시판에 남겨주세요.


답글 남기기

이메일 주소는 공개되지 않습니다.