我遇到IntelliJ问题,并且在服务器运行时自动部署更改(在本例中为Spring Boot)。
我在IntelliJ选项中启用了“自动构建项目”。
当我对.ts文件进行更改时,代码中的.js和.js.map文件会正确更新。
.ts文件,但是它没有在目标目录中更新。那是没问题的。我只需按“编译”快捷方式,目标输出中的.ts文件就会更新。大。
但未更新的是目标.js和js.map文件。无论我打开这些文件多少次并按“编译”,目标中的文件都不会更新。因此.ts和.js文件现在不同步,我需要重新启动服务器才能注意.js文件更改。
更奇怪的部分是,所有这些在我的工作计算机上工作正常,我可以告诉完全相同的设置。但我不能让它在家用电脑上工作。 我的同事也不能让它在他的工作计算机上工作,而且我已经查看并寻找设置中的任何差异。
就好像IntelliJ在某些设置上观察文件的更改一样,在某些设置中,它们会因为生成而被完全忽略。
任何人都能帮助我吗?
答案 0 :(得分:0)
好的,我找到了解决方案。
通过将tsconfig.json
更改为声明compilerOptions/outDir
以便将其直接输出到target/classes/static
目录,可以正确传播更改。
(对我而言,价值变成了美丽的../../../../../target/classes/static/scripts
)
副作用是,源映射路径变得非常不稳定,并开始在浏览器开发工具中显示为名为C:/.../src/main/resorces/static/...
的文件夹,在JavaScript根目录内,并且打字稿文件有困难有时出现,只是空白。
我找到的解决方法是将compilerOptions/inlineSources
设置为true并将compilerOptions/sourceRoot
设置为虚构的http://TypeScriptFiles
,以便它在浏览器开发工具中显示为新的根节点名为TypeScriptFiles
,而不是奇怪的嵌套目录。