我已经将typescript.msbuild nuget包添加到两个不同的项目中。
(刚刚使用版本2.7.2进行了测试。)
在当地,运行良好。在Kudu,它建造得很好。但是,在travis ci和bitbucket的管道上,我收到每个.ts文件的以下错误:
CompileTypeScriptWithTSConfig:
/home/travis/.nvm/versions/node/v6.12.0/bin/node /home/travis/build/<user>/<project>/packages/Microsoft.TypeScript.MSBuild.2.7.2/tools/tsc/tsc.js --project "/home/travis/build/<user>/<project>/Scripts/TypeScript/tsconfig.json" --listEmittedFiles
/home/travis/build/<user>/<project>/packages/Microsoft.TypeScript.MSBuild.2.7.2/tools/Microsoft.TypeScript.targets(444,5): error : Failed to create URI from '\home\travis\build\<user>\<project>\Scripts\TypeScript\App.js'. [/home/travis/build/<user>/<project>/<project>.csproj]
/home/travis/build/<user>/<project>/packages/Microsoft.TypeScript.MSBuild.2.7.2/tools/Microsoft.TypeScript.targets(444,5): error : Failed to create URI from '\home\travis\build\<user>\<project>\Scripts\TypeScript\App.js.map'. [/home/travis/build/<user>/<project>/<project>.csproj]
我的 tsconfig.json
文件如下:
{
"compilerOptions": {
"noImplicitAny": true,
"noImplicitThis": true,
"noEmitOnError": true,
"module": "commonjs",
"target": "es5",
"sourceMap": true,
"removeComments": true
},
"compileOnSave": true
}
另外,有趣的是,在本地运行命令会得到正确的结果:(注意,我确实运行了 nvm use 6.12.0
查看是否是节点问题)
C:\Users\User\Projects\Project> node ./packages/Microsoft.TypeScript.MSBuild.2.7.2/tools/tsc/tsc.js --project "<Project>/Scripts/TypeScript/tsconfig.json" --listEmittedFiles
TSFILE: C:/Users/User/Projects/Project/Scripts/TypeScript/App.js
TSFILE: C:/Users/User/Projects/Project/Scripts/TypeScript/App.js.map
因此,我的问题是:如何保留typescript.msbuild nuget包并使其与ci一起工作?
edit:我通过ssh连接到travis容器,并运行了两次msbuild命令。第二次,它建得很好。msbuild任务似乎试图过早地构建uri,可能吧?
1条答案
按热度按时间inb24sb21#
我是靠搬家来工作的
tsconfig.json
到项目的根文件夹。