Pregunta

Utilizamos ajaxmin para crear archivos .min.js de todos nuestros archivos .js. Hemos editado el archivo .csproj del proyecto y añadió lo siguiente:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\MicrosoftAjax\ajaxmin.tasks" />
<Target Name="AfterBuild">
    <ItemGroup>
        <JS Include="**\*.js" Exclude="**\*.min.js" />
    </ItemGroup>
    <AjaxMin JsSourceFiles="@(JS)" JsSourceExtensionPattern="\.js$" JsTargetExtension=".min.js" />
</Target>

Esto funciona muy bien cuando construimos el sitio en nuestra estación de trabajo y los archivos .min.js podemos ser utilizados en el sitio. Cuando comprobamos este proyecto en esta tarea se ejecuta también en el servidor msbuild pero los archivos generados por .min.js ajaxmin no se copian en el lugar de retorno de la tfs2010 balanceo formación usamos. Estos archivos .min.js tampoco están incluidos en el paquete que creamos durante esta acumulación de rodadura y que también se copia en el lugar de retorno. Sólo los archivos incluidos en el proyecto se utilizan para el paquete y se copian en lugar de retorno.

Los argumentos de MSBuild que utilizamos para crear el paquete son los siguientes:

/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:MSDeployPublishMethod=InProc /p:CreatePackageOnPublish=True /p:MSDeployServiceURL=localhost

He intentado varias cosas como la adición de una tarea de construcción adicional para copiar todos los archivos .min.js a la ubicación donde se crea el paquete. He intentado también la siguiente dirección http://sedodream.com/2010/05/01/WebDeploymentToolMSDeployBuildPackageIncludingExtraFilesOrExcludingSpecificFiles .aspx para incluir estos archivos con la siguiente en mi archivo .csproj:

<PropertyGroup>
    <CopyAllFilesToSingleFolderForPackageDependsOn>
      CustomCollectFiles;
      $(CopyAllFilesToSingleFolderForPackageDependsOn);
    </CopyAllFilesToSingleFolderForPackageDependsOn>
</PropertyGroup>
<Target Name="CustomCollectFiles">
    <ItemGroup>
        <_CustomFiles Include="**\*.min.js" />
        <FilesForPackagingFromProject  Include="%(_CustomFiles.Identity)">
            <DestinationRelativePath>%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
        </FilesForPackagingFromProject>
    </ItemGroup>
</Target>

Alguien más también este problema o ¿alguien tiene una idea de cómo incluir los archivos * .min.js en el paquete MSDeploy y hacer que los archivos de copia a la ubicación de la gota?

¿Fue útil?

Solución

Se perdió el directorio de destino por lo que todo lo que tiene que hacer es crear carpetas par para cada secuencia de comandos en la carpeta de escritura, fuente y destino para asegurarse de que no ha copiado todos los archivos min a cada carpeta en su proyecto de acuerdo con el estructura de carpetas guión de su proyecto, de cualquier manera que escribo un artículo y que la forma de hacer eso, también puede descargar el proyecto que haga eso, http://mohamedradwan.wordpress.com/2010/11 / 12 / cómo-a-son-minify-files-o-atención al cliente al-files-con-web-pagckage-o-ms-deploy-paquete /

Gracias

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top