2

nantを使用してmsbuildを介してソリューションを構築しようとしています。問題は、ソリューションのディレクトリが次のとおりであるということです。

C:\Repositorio\Proyectos Casino\SPPM\Codificación\PokerManager

あなたが見ることができるように、それは特別なキャラクターを持っていますó

これは私のビルドファイルです

<?xml version="1.0" encoding="ascii"?>
<project name="Simple" default="copy">
<property name="nantcontrib-dir"
   value="${path::combine(nant::get-base-directory(), '..\..\nantcontrib-0.85')}" overwrite="false" />

<property name="dest-dir"
   value="C:\temp\nant\table\full-release" overwrite="true" />

<property name="remote-dir"
   value="C:\temp\nant\table\full-release" overwrite="true" />


<property name="cleandir"
   value="C:\temp\nant\table" overwrite="false" />



<property name="pm-soldir"
   value ="C:\Repositorio\Proyectos Casino\SPPM\Codificación\PokerManager\PokerManager.sln" />



<loadtasks assembly=
    "${path::combine(nantcontrib-dir,'bin/NAnt.Contrib.Tasks.dll')}" 
 /> 
<target name="build-PokerManager"
        description="Builds all C# code">

<property name="nant.settings.currentframework" value="net-4.0"/>
  <msbuild project="${pm-soldir}">
    <property name="Configuration"
              value="release" />
    <property name="OutputPath" value="${dest-dir}"/>

  </msbuild>
</target>


<target name="copy" depends="build-PokerManager">
     <copy todir="${remote-dir}">
    <fileset basedir="${dest-dir}">
        <include name="**/*" />
    </fileset>
</copy>
    </target>



</project>

私がそれを実行すると、私は得ます

ビルド-PokerManager:

BUILD FAILED

C:\Juan Pablo\Release Maker\ForTablet\NAnt\table-releases.build(30,4):
'C:\Repositorio\Proyectos Casino\SPPM\Codifica
ci?n\PokerManager\PokerManager.sln' is not a valid value for attribute 'project'
 of <msbuild ... />.
    not valid characters in path..

Total time: 0.1 seconds.

utf-8とunicodeを使用してみましたが、機能しませんでした

前もって感謝します

4

2 に答える 2

1

Spudleyは正しい方向に進んでいると思います。あるべきではありませ<?xml version="1.0" encoding="ascii"?><?xml version="1.0" encoding="UTF-8"?>。AsciiはUnicode文字ではうまくいきません...

于 2011-08-16T19:32:11.113 に答える
1

UTF-8エンコーディングは機能するはずですが、システム内の何かがそれを処理するのを好まない可能性がありますか?

UTF-8がない場合、エンティティエンコーディングを試しましたか?

文字は、のóXMLエンティティコードにエンコードされます&#211;。これは、文字エンコードが何であるかに関係なく、XMLで機能するはずです。

(ただし、その1つの文字を文字列で置き換えるだけでなく、適切なエンティティエンコーディング関数を使用してください。これにより、現在または将来、潜んでいる他の漂遊文字を確実にキャッチできます)

于 2011-08-16T19:18:27.757 に答える