4

最近プロジェクトを開始し、現在ファイルを構成しようとしていccnet.configます。

実は、CruiseControl がログ ファイルを見つけられない理由がわかりません。

それは簡単なことだと思いますが、私は何か間違ったことをしています.4日後、解決策を見つけることができます.

CCNET で次のエラー メッセージが表示されます。

ThoughtWorks.CruiseControl.Remote.CommunicationsException: Request processing has failed on the remote server: Unable to find Log Publisher for project so can't find log file at 
ThoughtWorks.CruiseControl.Remote.CruiseServerClient.ValidateResponse(Response response) at 
ThoughtWorks.CruiseControl.Remote.CruiseServerClient.GetMostRecentBuildNames(String projectName, Int32 buildCount) at 
ThoughtWorks.CruiseControl.WebDashboard.ServerConnection.ServerAggregatingCruiseManagerWrapper.GetMostRecentBuildSpecifiers(IProjectSpecifier projectSpecifier, Int32 buildCount, String sessionToken) at ThoughtWorks.CruiseControl.WebDashboard.Plugins.ProjectReport.ProjectReportProjectPlugin.Execute(ICruiseRequest cruiseRequest) at ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ServerCheckingProxyAction.Execute(ICruiseRequest cruiseRequest) at ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ProjectCheckingProxyAction.Execute(ICruiseRequest cruiseRequest) at 
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.CruiseActionProxyAction.Execute(IRequest request) at 
ThoughtWorks.CruiseControl.WebDashboard.MVC.Cruise.ExceptionCatchingActionProxy.Execute(IRequest request)

私があなたに言ったように、私の設定ファイルに何か問題があると思います.1つは次のとおりです:

<cruisecontrol>
  <project name="Myproject" queue="MyprojectQueue" queuePriority="1">
    <webURL>http://localhost:80/ccnet/</webURL>
    <workingDirectory>C:\Projects\Myproject\trunk\Source\</workingDirectory>
    <artifactDirectory>C:\Projects\Myproject\trunk\Build\Log\</artifactDirectory>
    <sourcecontrol type="svn">
      <trunkUrl>https://localhost/svn/Myproject.com/trunk</trunkUrl>
      <workingDirectory>E:\Repositories\Myproject.com</workingDirectory>
      <executable>C:\Program Files\VisualSVN Server\bin\svn.exe</executable>
      <username>myusername</username>
      <password>mypassword</password>
      <timeout>60000</timeout>
    </sourcecontrol>
    <tasks>
      <artifactcleanup   cleanUpMethod="KeepLastXBuilds"   cleanUpValue="5" />
      <modificationWriter>
        <filename>mods.xml</filename>
        <path></path>
      </modificationWriter>
    </tasks>
    <triggers>
      <intervalTrigger name="SVN" seconds="10" buildCondition="IfModificationExists" />
    </triggers>
    <labeller type="defaultlabeller">      
      <prefix>0.1.</prefix>
      <incrementOnFailure>true</incrementOnFailure>
      <labelFormat>000</labelFormat>
    </labeller>
    <state type="state" directory="State" />

    <tasks>
      <nant>
        <executable>C:\Projects\Myproject\trunk\Binaries\NAnt\bin\nant.exe</executable>
        <baseDirectory>C:\Projects\Myproject\trunk\Binaries\NAnt\</baseDirectory>
        <buildArgs>-D:svn.executable="C:\Program Files\VisualSVN Server\bin\svn.exe"</buildArgs>
        <nologo>false</nologo>
        <buildFile>C:\Projects\Myproject\trunk\Source\Myproject.build</buildFile>
        <logger>SourceForge.NAnt.XmlLogger</logger>
        <buildTimeoutSeconds>1200</buildTimeoutSeconds>
        <targetList>
          <target>cruise</target>
        </targetList>
      </nant>
    </tasks>

    <publishers>
      <buildpublisher>
        <sourceDir>C:\Projects\Myproject\trunk\Build</sourceDir>
        <publishDir>C:\Projects\Myproject\trunk\Build</publishDir>
        <useLabelSubDirectory>true</useLabelSubDirectory>
      </buildpublisher>
      <merge>
        <files>
          <file>reports\devenv.log</file>
          <file>reports\*-nunit.xml</file>
          <file>reports\*-Coverage.xml</file>
        </files>
      </merge>
    </publishers>
  </project>
</cruisecontrol>

私の.slnファイルは「ソースディレクトリ」にあります。

私は検索していましたが、これについては何も見つかりません。また、ご覧のとおり and を使用nantsvnています。

4

1 に答える 1

4

パブリッシャー ブロック内に XML ログ パブリッシャーがありません。ドキュメント (.../CruiseControl.NET/webdashboard/doc/CCNET/Xml Log Publisher.html、オンライン ドキュメントは現在ダウンしているようです) に記載されているように、ダッシュボードが正しく機能するために必要です。パブリッシャー ブロックにはデフォルトで含まれているため、プロジェクトにパブリッシャー ブロックを含める場合にのみ追加する必要があります。

パブリッシャー ブロックを次のように変更してみてください。

<publishers>
  <buildpublisher>
    <sourceDir>C:\Projects\Myproject\trunk\Build</sourceDir>
    <publishDir>C:\Projects\Myproject\trunk\Build</publishDir>
    <useLabelSubDirectory>true</useLabelSubDirectory>
  </buildpublisher>
  <merge>
    <files>
      <file>reports\devenv.log</file>
      <file>reports\*-nunit.xml</file>
      <file>reports\*-Coverage.xml</file>
    </files>
  </merge>
  <xmllogger />
</publishers>
于 2011-02-17T05:42:03.493 に答える