Typescript 类型脚本编译器:生成的源、根目录、排除和符号链接
我有一个TypeScript 2.0.3项目的设置:Typescript 类型脚本编译器:生成的源、根目录、排除和符号链接,typescript,compilation,symlink,tsc,Typescript,Compilation,Symlink,Tsc,我有一个TypeScript 2.0.3项目的设置: src/main/webapp/tsconfig.json src/main/webapp/app -- contains .ts files src/main/webapp/app/tsModels -- a symlink to ../../../../target/tsModels target/tsModels/ -- contains .ts files 目标是编译target/tsModels中的.ts文件 首先,使用“ro
src/main/webapp/tsconfig.json
src/main/webapp/app -- contains .ts files
src/main/webapp/app/tsModels -- a symlink to ../../../../target/tsModels
target/tsModels/ -- contains .ts files
目标是编译target/tsModels
中的.ts文件
首先,使用“rootDir”:“
,tsc
:
错误TS6059:文件“[…]/target/tsModels/AboutWindupModel.ts”不在“rootDir”[…]/src/main/webapp”下rootDir'应包含所有源文件
所以我试过了
{
"compilerOptions": { ...,
//"rootDir": ".",
"rootDirs": [".", "../../../target/tsModels"],
},
}
还是一样。尝试:
{
"compilerOptions": {
//"rootDir": ".",
"rootDirs": [".", "../../../target/tsModels"],
},
"exclude": [
"node_modules",
"target/**",
"../../../target/**",
"../../../target/**/*",
"../../../target/tsModels/*",
"typings/main",
"typings/main.d.ts"
]
}
但还是会犯这样的错误
因此,tsc
似乎无法正确处理符号链接,总是检查规范路径
所以我想,让我们直接编译tsModels
文件。因此,我删除了符号链接并尝试:
"compilerOptions": {
//"rootDir": ".",
"rootDirs": [".", "../../../target/tsModels"],
},
但是这实际上并不编译tsModels
dir中的文件。我甚至试过
"rootDirs": "../../../target/tsModels",
但是tsc
没有编译它,而是编译了
。它遵守了吗
如何从两个目录编译文件?有没有办法使用指向rootDir外部目录的符号链接
rootDir
使用我尝试的所有垃圾进行完整配置:
{
“编译器选项”:{
“目标”:“es5”,
“模块”:“系统”,
“moduleResolution”:“节点”,
“源地图”:正确,
“emit decoromentadata”:正确,
“实验生态学者”:没错,
“removeComments”:false,
“noImplicitAny”:错,
//“rootDir”:“,
//“rootDirs”:[“,”../../../../target/tsModels”],
“rootDirs”:[“../../../target/tsModels”],
//“rootDir”:“../../../target/tsModels”,
“outDir”:“../../../target/windup web”,
“sourceRoot”:“/结束web/”
},
“排除”:[
“节点_模块”,
//“目标/**”,
//“../../../target/**”,
//“../../../target/***”,
//“../../../target/tsModels/*”,
//“目标/tsModels/**”,
“打字/主要”,
“打字/主要d.T”
]
}
我认为preserveSymlinks
编译器选项可以帮助您:
不要将符号链接解析为其实际路径;将符号链接文件视为真实文件
例如:
{
"compilerOptions": {
"preserveSymlinks": true
}
}
虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-这不是一个链接唯一的答案。答案文本中包含重要信息-“使用保留符号链接编译器选项”。链接本身并不能回答这个问题,它是一个所有编译器选项的列表,我添加它只是为了参考。如果你觉得没有足够的信息,我添加了一个例子。事实上,我的评论可能会失败,这是很自然的。因此,在做出决定之前,几个评审员应该达成一致。不合格的评审员将受到处罚。在我看来,创建内容的系统也是如此,其中“答案”是一个内容单元(而不是其他论坛上的线程)。Asnwer应该是一个有趣的“故事”:)如果我失败了,不要担心太多——其他评论员/版主会评论我:)这就是它的工作原理。