TypeScript 2.0 和 VS 2017 Build Tools 不再部署 js 文件
TypeScript 2.0 and VS 2017 Build Tools no longer deploy js files
我最近从 VS 2015 更新 3 升级到 VS 2017,这将我的解决方案从 TypeScript 1.8 升级到 TypeScript 2.1。
我将 .csproj
文件中的 TypeScriptToolsVersion
从 1.8
更改为 2.1
,如下所示:
这是完整的 PropertyGroup:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{redacted}</ProjectGuid>
<ProjectTypeGuids>{redacted};{redacted}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>WebApplication</RootNamespace>
<AssemblyName>WebApplication</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<FileUpgradeFlags>
</FileUpgradeFlags>
<OldToolsVersion>4.0</OldToolsVersion>
<UpgradeBackupLocation />
<TargetFrameworkProfile />
<UseIISExpress>false</UseIISExpress>
<WcfConfigValidationEnabled>True</WcfConfigValidationEnabled>
<IISExpressSSLPort /><IISExpressAnonymousAuthentication>disabled</IISExpressAnonymousAuthentication>
<IISExpressWindowsAuthentication>enabled</IISExpressWindowsAuthentication>
<IISExpressUseClassicPipelineMode>false</IISExpressUseClassicPipelineMode>
<UseGlobalApplicationHostFile />
<TypeScriptToolsVersion>2.1</TypeScriptToolsVersion>
</PropertyGroup>
升级之前,部署会复制与 .ts
文件关联的 .js
和 .map.js
文件。 (注意这些 .js
文件不在解决方案中 "included"。
升级后,部署不会复制关联的 .js
或 .map.js
文件。
奇怪的是,没有关联 TypeScript 源的 .js
个文件被成功复制,例如 jquery.js
。这些文件在解决方案中 "included"。
我可以确认构建确实具有预期的关联 .js
文件...只是部署步骤不会复制它们。
我正在使用 msdeploy 进行部署,如下所示:
WebApplication.deploy.cmd https://WEBSERVER01:8172/msdeploy.axd?site=test.example.com TheUser ThePassword
为什么这些文件不再复制,我该如何解决?
这似乎已在 15.2 中修复
我最近从 VS 2015 更新 3 升级到 VS 2017,这将我的解决方案从 TypeScript 1.8 升级到 TypeScript 2.1。
我将 .csproj
文件中的 TypeScriptToolsVersion
从 1.8
更改为 2.1
,如下所示:
这是完整的 PropertyGroup:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{redacted}</ProjectGuid>
<ProjectTypeGuids>{redacted};{redacted}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>WebApplication</RootNamespace>
<AssemblyName>WebApplication</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<FileUpgradeFlags>
</FileUpgradeFlags>
<OldToolsVersion>4.0</OldToolsVersion>
<UpgradeBackupLocation />
<TargetFrameworkProfile />
<UseIISExpress>false</UseIISExpress>
<WcfConfigValidationEnabled>True</WcfConfigValidationEnabled>
<IISExpressSSLPort /><IISExpressAnonymousAuthentication>disabled</IISExpressAnonymousAuthentication>
<IISExpressWindowsAuthentication>enabled</IISExpressWindowsAuthentication>
<IISExpressUseClassicPipelineMode>false</IISExpressUseClassicPipelineMode>
<UseGlobalApplicationHostFile />
<TypeScriptToolsVersion>2.1</TypeScriptToolsVersion>
</PropertyGroup>
升级之前,部署会复制与 .ts
文件关联的 .js
和 .map.js
文件。 (注意这些 .js
文件不在解决方案中 "included"。
升级后,部署不会复制关联的 .js
或 .map.js
文件。
奇怪的是,没有关联 TypeScript 源的 .js
个文件被成功复制,例如 jquery.js
。这些文件在解决方案中 "included"。
我可以确认构建确实具有预期的关联 .js
文件...只是部署步骤不会复制它们。
我正在使用 msdeploy 进行部署,如下所示:
WebApplication.deploy.cmd https://WEBSERVER01:8172/msdeploy.axd?site=test.example.com TheUser ThePassword
为什么这些文件不再复制,我该如何解决?
这似乎已在 15.2 中修复