質問

私はしばらくの間、私のMVC3プロジェクトに作業しています、かなりの数の異なるコンプレッサーや方法を試してみることを試みています。私はついにプロジェクトファイルのMSBuildタスクを介してMicrosoft Ajax Minifierを使うことに最終的に定着しました。私は私の構成に今までだけですが、私は即座のつまずきブロックを打ちました。 JSスクリプトをミニフィーして単一のファイル(下記のタスク定義を使用して)に合わせて、私の結合ファイルには常に各スクリプトの2つの値が含まれています。

私は私が追加した他の複雑なMSBuildタスクを削除し、すべてのJSスクリプトを削除しました、そしてそれはまだ起こっています。以下のタグは、手動で変更したプロジェクトファイルの唯一の部分です。

<UsingTask TaskName="AjaxMin" AssemblyFile="$(MSBuildProjectDirectory)\..\_Build\AjaxMinTask.dll" />
<Target Name="AfterBuild">
    <ItemGroup>
        <JsFiles Include="**\res\js\libs\jquery.js" />
    </ItemGroup>
    <AjaxMin Switches="-global:jQuery,$" JsSourceFiles="@(JsFiles)" JsCombinedFileName="Combined.min.js" />
</Target>
.

Combors.min.jsは、Webプロジェクトのルートに作成されます(期待通り)、jQuery.jsファイルの2つの値が含まれています。

Microsoft Visual Studio Ultimate 2012 RC(バージョン11.0.50706.0 QRELRC 7月7月)を使用しており、参照「ajaxmintask.dll」ファイルはここ

今、これが最も奇妙なことです。さらに、VS 2010とVS 2012の両方で完全に新しいMVC3プロジェクトを作成し、上記の行をコピー&プロジェクトファイルに貼り付けました - Ajaxmintask.dllへのパスの変更(壊れたプロジェクトと同じものと同じ) jQueryファイルへのパス(\ scripts \ jQuery..js)、および は完全にうまく機能します

残念ながら、Stack Overflowが長すぎるため、プロジェクトファイルを貼り付けることはできませんので、元のjQueryファイルを省略しています。結果として生じる「省的な」ファイル、および私が使用しているAjaxminアセンブリ:

[URL編集]

あるいは、Visual Studio 2012のリリースモードで、.NET 4.0とMVC 3を使用して、私がリリースモードでビルドするときに、他の推奨される方法に非常にオープンしています。

役に立ちましたか?

解決

まあ、ここでは奇妙なゴッカです。

<JsFiles Include="**\res\javascript\libs\jquery.js" />
.

またはパスの先頭から "** \"の削除:

<JsFiles Include="res\js\libs\jquery.js" />
.

私はこれがある種のバグです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top