1

私は SONAR の初心者です。Java プロジェクト名 'Hello World' を SONAR のデフォルトの Sun チェック Quality profile で実行するためのサンプル ant ビルド ファイルのヘルプが必要です。ソナーの適切な ant ガイドはどこにも見つかりませんでした。SONAR 2.10 を使用しています。

SONAR を始めるのを手伝ってください。

<project name="Example" default="Sonar" basedir=".">
<taskdef uri="antlib:org.sonar.ant" resource="org/sonar/ant/antlib.xml">
 <classpath path="C:\Program Files\Apache Software Foundation\ant\lib\sonar-ant-task-1.0.jar" />
</taskdef>
<!-- Out-of-the-box those parameters are optional -->
<property name="sonar.jdbc.url" value="jdbc:mysql://localhost:3309/sonar" />
<property name="sonar.jdbc.driverClassName" value="com.mysql.jdbc.Driver" />
<property name="sonar.jdbc.username" value="root" />
<property name="sonar.jdbc.password" value="root" />
<!-- Additional Sonar configuration (PMD need 1.5 when using annotations)-->
<property name="sonar.java.source" value="1.5"/>
<property name="sonar.java.target" value="1.5"/>
<property name="sonar.projectName" value="Example"/>
<property name="sonar.binaries" value="C:\Documents and   Settings\tausif\Feature2\Example\bin"/>
 <!-- SERVER ON A REMOTE HOST -->
<property name="sonar.host.url" value="http://localhost:8080/sonar" />
<target name="Sonar">
<!-- The workDir directory is used by Sonar to store temporary files -->
<sonar:sonar workDir="C:\Documents and Settings\tausif\Feature2\Sonar" key="com.example:example"  xmlns:sonar="antlib:org.sonar.ant" >
  <!-- source directories (required) -->
  <sources>
    <path location="C:\Documents and Settings\tausif\Feature2\Example" />
  </sources>
</sonar:sonar>
</target>
</project>

上記の 2 つの回答は、この xml ファイルを作成するのに非常に役立ちました。これは私のサンプル build.xml です。不足しているものを確認していただけますか?デフォルトで Sun のチェックを行いました。私のプロジェクト名は Example です。

4

2 に答える 2

1

これSonar 2.6:Antコミュニティの継続的な検査サポートを追加)またはこのAnt Task 1.0で分析)ドキュメントが役立つ場合があります。

于 2011-08-24T10:46:45.947 に答える
1

ソナーに固有の ant スクリプトを以下で参照できます。build.xml に追加できます。以下は詳細を含むスクリプトです

<!-- Here you need to set the path which contains sonar specific jars required for ant  e.g. path which contains sonar-ant-task-2.1.jar -->
<path id="sonar.classpath">
    <fileset dir="${basedir}/sonar" includes="**/*.jar" />
</path>

<!-- This taskdef represents your ant lib for sonar you have to specify jar location along with jar name in class path no need to change the uri and resource-->
<taskdef uri="antlib:org.sonar.ant" resource="org/sonar/ant/antlib.xml">
        <classpath path="${basedir}\sonar\sonar-ant-task-2.1.jar" />
</taskdef>

<!-- This is the target we use to run sonar "depends" property is optional -->
<target name="sonar" depends="clean, compile">
            <!-- specify your build version -->  
    <property name="build.version" value="0.0.0.1-Sonar"/>

            <!-- specify your organization name its optional --> 
    <property name="mysonar.organizationName" value="XYZ"/>

            <!-- specify your project Name --> 
    <property name="sonar.projectName" value="${project.name}" />

            <!-- database url which is used by the sonar -->
    <property name="sonar.jdbc.url" value="jdbc:mysql://<IP>:<Port>/sonar?useUnicode=true&amp;characterEncoding=utf8" />

            <!-- Driver name-->
    <property name="sonar.jdbc.driverClassName" value="com.mysql.jdbc.Driver" />

            <!-- database user name --> 
    <property name="sonar.jdbc.username" value="test" />

            <!-- database password -->
    <property name="sonar.jdbc.password" value="test" />

            <!-- url on which sonar is running-->
    <property name="sonar.host.url" value="http://<IP>:<Port>" />

             <!-- project key -->
     <property name="sonar.projectKey" value="${mysonar.organizationName}:${sonar.projectName}" />

             <!-- project version--> 
     <property name="sonar.projectVersion" value="1.0" />

            <!-- location source files --> 
    <property name="sonar.sources" value="${src.home}/main/java" /> 

            <!-- location of binaries after compilation--> 
    <property name="sonar.binaries" value="${basedir}/output"/>

            <!-- location of sonar library-->  
    <sonar:sonar xmlns:sonar="antlib:org.sonar.ant">

    </sonar:sonar>
</target>

注:指定した場所が正しいことを確認してください。絶対パスも指定できます。

于 2014-04-08T05:18:53.040 に答える