Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2013 还原Typescript定义Nuget包_Visual Studio 2013_Typescript_Nuget - Fatal编程技术网

Visual studio 2013 还原Typescript定义Nuget包

Visual studio 2013 还原Typescript定义Nuget包,visual-studio-2013,typescript,nuget,Visual Studio 2013,Typescript,Nuget,我目前正在从事一个新项目,该项目对所有客户端代码使用Typescript。我使用许多纯JavaScript库让它们与我的Typescript一起工作。我使用Nuget通过以下包管理器命令拉入*.d.ts文件 包管理器命令示例: 安装包angularjs.TypeScript.DefinitelyTyped-版本2.0.2 这是一种处理方式,在安装所有my Nuget软件包后,会在项目目录中创建一个名为packages.config的文件: <?xml version="1.0" encod

我目前正在从事一个新项目,该项目对所有客户端代码使用Typescript。我使用许多纯JavaScript库让它们与我的Typescript一起工作。我使用Nuget通过以下包管理器命令拉入*.d.ts文件

包管理器命令示例:

安装包angularjs.TypeScript.DefinitelyTyped-版本2.0.2

这是一种处理方式,在安装所有my Nuget软件包后,会在项目目录中创建一个名为packages.config的文件:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="angularjs.TypeScript.DefinitelyTyped" version="2.0.2" targetFramework="net45" />
  <package id="angular-translate.TypeScript.DefinitelyTyped" version="0.9.0" targetFramework="net45" />
  <package id="bootstrap.TypeScript.DefinitelyTyped" version="0.0.9" targetFramework="net45" />
  <package id="jquery.TypeScript.DefinitelyTyped" version="1.4.0" targetFramework="net45" />
</packages>
现在我的问题是当其他人尝试克隆我的存储库时,visual Studio将尝试并自动恢复Nuget软件包,但会以以下方式安装它们:

Packages\
   angularjs.TypeScript.DefinitelyTyped.2.0.2\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   angular-translate.TypeScript.DefinitelyTyped.0.9.0\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   bootstrap.TypeScript.DefinitelyTyped.0.0.9\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   jquery.TypeScript.DefinitelyTyped.1.4.0\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)
我已经阅读了大量stackoverflow线程和Nuget文档,但似乎没有找到一个解决方案,可以在新的repo机器上运行命令,它会将文件恢复到我在原始机器上的配置


理想情况下,我希望避免编写和*.bat文件,从而将文件结构转换为我想要的方式。

我相信您正在经历一个常见的问题。这里的问题是,(自动)Nuget恢复和安装包不同。Nuget Restore的目的是下载和解压包。它不会还原项目或解决方案文件夹的内容。阅读这篇文章了解更多关于原因的细节。有很多人对这种行为感到疯狂,但这是Nuget开发人员的选择

对的评论中提到了许多解决方案。我个人使用
安装包MSBuild.NugetContentRestore
,这是解决内容文件问题所需的全部


希望这能有所帮助。

Jason可能有更好的主意。您可以通过在此处报告问题来获取他的兴趣:
Packages\
   angularjs.TypeScript.DefinitelyTyped.2.0.2\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   angular-translate.TypeScript.DefinitelyTyped.0.9.0\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   bootstrap.TypeScript.DefinitelyTyped.0.0.9\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)

   jquery.TypeScript.DefinitelyTyped.1.4.0\
       Content\
           Scripts\
               typings\
                   angularjs\ (contains relivant files)