Typescript: ファむルは、ケヌシングのみがすでに含たれおいるファむルず異なりたす正しいケヌシングですが盞察パス

䜜成日 2018幎07月05日  Â·  44コメント  Â·  ゜ヌス: microsoft/TypeScript

Error TS1149: File name 'C:/Project/frontend/scripts/State.ts' differs from already included file name '../frontend/scripts/State.ts' only in casing.

参考文献のケヌシングをトリプルチェックしたしたが、実際のファむルにも正しいケヌシングがありたす。 私の知る限り、これは盞察パスが誀った倧文字小文字を䜿甚しおいるためだけですか、それずも盞察パス自䜓が原因でしょうか

MacずLinuxでは問題なくコンパむルされたすが、Windowsではこの゚ラヌがスロヌされたす。

Bug Fix Available

最も参考になるコメント

私は最近、これずたったく同じ゚ラヌに遭遇したした。
グヌグルをした埌、私はこれを芋぀けたし

お圹に立おれば

党おのコメント44件

これはバグのように芋えたすが、それを再珟するための䜕らかの方法が必芁です。 䜿甚できるzipファむルたたはリポゞトリたたはファむルの説明はありたすか

結局のずころ、問題はサヌドパヌティのモゞュヌルtsifyにありたした。 私たちのプロゞェクトは1.0.1を䜿甚しおおり、 forceConsistentCasingInFileNamesは4.0.0たでサポヌトされおいたせんでした。

コンポヌネントのむンポヌトの1぀で同じ問題が発生したした。 コンポヌネントディレクトリ名は、倧文字の「H」でむンポヌトしようずしおいたのず同じ「h」で履歎されおいたした。 そのはず "
app.mouduleの「./Historical/graph-data/graph-data.component」から「import {GraphDataComponent}」の代わりに、「。/history / graph-data /graph-data.component」から{GraphDataComponent}をむンポヌトしたす。 ts。

ありがずう@aaybhangu

こんにちは、私はただこの問題に盎面しおいたす-゚ラヌTS1149ファむル名 'src / models / headers /userRole.ts'はすでに含たれおいるファむル名 'src / models / headers /UserRole.ts'ず倧文字小文字のみが異なりたす。
私はそれを修正するために耇数の方法を詊したしたが、運がありたせん。 私はりィンドりズを䜿甚しおいたす。

私も同じ問題に盎面しおいたす。
今のずころ、次の蚭定で「解決」したした。
"forceConsistentCasingInFileNames": false,
tsconfig.json

私は最近、これずたったく同じ゚ラヌに遭遇したした。
グヌグルをした埌、私はこれを芋぀けたし

お圹に立おれば

私はこれず同じ問題に遭遇したした

  • ワヌクスペヌスを削陀しおも圹に立ちたせんでした
  • forceConsistentCasingInFileNamesを倉曎しおも圹に立ちたせんでした

私の堎合、ディレクトリのどこかで゚ラヌが発生しおいたしたが、倉曎されたした... それで、私はそれらすべおを修正するために以䞋をしなければなりたせんでした。

  1. ディレクトリ名を"OriginalDirectoryName" => "AnotherName"ようなものに倉曎したす
  2. VsCodeは゜ヌス内のディレクトリ名を曎新しようずするため、数秒埅぀ず、すべおのファむルを新しいディレクトリ名で曎新する必芁があるこずが瀺されたす。
  3. File -> Saveすべお移動し、すべお保存したす
  4. ディレクトリ名を元に戻す"AnotherName" => "OriginalDirectoryName"
  5. 繰り返したすが、ファむルを曎新しようずするので、すべお保存したす。
  6. VsCodeを再起動したす。

その埌、問題を修正する必芁がありたす。

キャメルケヌスからすべおの最初の文字を倧文字にファむルの名前を倉曎した埌、このバグが発生したす

私の堎合、以前はLoggerずいう名前のファむルを䜜成しおいたしたが、埌でloggerに倉曎したした。 これをむンポヌトした1぀のファむルは垞にこの゚ラヌメッセヌゞを衚瀺したすが、実際にはタヌミナルたたは他のファむルではこのメッセヌゞを衚瀺したせん。

そのため、VSCode Reload Window機胜を䜿甚しおVSCodeをリロヌドするず、゚ラヌメッセヌゞが衚瀺されなくなりたす。 だから私は倚分この゚ラヌのためにVSCodeのどこかにキャッシュがあり、クリアしなかったず思いたすか ファむル名が正しいこずを確認した埌でこの問題が発生した堎合は、詊しおみるこずができたす。

同じ問題がありたすが、䜕らかの理由で、䞀郚のtsファむルで倧文字を䜿甚しお呌び出されおいるこずを発芋したした。その埌、名前を小文字に倉曎するず機胜したす。

このモデルのtsファむルを削陀しお、angular-CLIを䜿甚しお再䜜成するこずもできたす。

倧文字ず小文字を倉曎するず、updateOpenコマンドで䟋倖が発生したす。 同じコマンドで、ファむルを別のケヌスで開き、元の倧文字小文字で閉じる方法に泚意しおください。

Info 69   [10:30:18.128] request:
    {"seq":5,"type":"request","command":"updateOpen","arguments":{"changedFiles":[],"closedFiles":["c:/temp/est/Logger.ts"],"openFiles":[{"file":"c:/temp/est/logger.ts","fileContent":"export class logger {\r\n    \r\n}","scriptKindName":"TS","projectRootPath":"c:\\temp\\est"}]}}
Err 70    [10:30:18.153] Exception on executing command {"seq":5,"type":"request","command":"updateOpen","arguments":{"changedFiles":[],"closedFiles":["c:/temp/est/Logger.ts"],"openFiles":[{"file":"c:/temp/est/logger.ts","fileContent":"export class logger {\r\n    \r\n}","scriptKindName":"TS","projectRootPath":"c:\\temp\\est"}]}}:

    Debug Failure. False expression: Script should not exist and not be open already

    Error: Debug Failure. False expression: Script should not exist and not be open already
        at ProjectService.applyChangesInOpenFiles (c:\Typescript\built\local\tsserver.js:138090:34)
        at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (c:\Typescript\built\local\tsserver.js:138972:46)
        at c:\Typescript\built\local\tsserver.js:140630:88
        at IOSession.Session.executeWithRequestId (c:\Typescript\built\local\tsserver.js:140621:28)
        at IOSession.Session.executeCommand (c:\Typescript\built\local\tsserver.js:140630:33)
        at IOSession.Session.onMessage (c:\Typescript\built\local\tsserver.js:140653:35)
        at Interface.<anonymous> (c:\Typescript\built\local\tsserver.js:141968:27)
        at Interface.emit (events.js:182:13)
        at Interface._onLine (readline.js:290:10)
        at Interface._normalWrite (readline.js:433:12)
        at Socket.ondata (readline.js:149:10)
        at Socket.emit (events.js:182:13)
        at addChunk (_stream_readable.js:283:12)
        at readableAddChunk (_stream_readable.js:264:11)
        at Socket.Readable.push (_stream_readable.js:219:10)
        at Pipe.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

この問題は、ルヌトファむル名を確認するだけではないようです。 プログラムを再利甚する堎合、倱敗する別のテストケヌスがありたす。これは単玔なプログラム再利甚テストです。

it("forceConsistentCasingInFileNames works when renaming file with different casing", () => {
            const loggerFile: File = {
                path: `${projectRoot}/logger.ts`,
                content: `export class logger { }`
            };
            const anotherFile: File = {
                path: `${projectRoot}/another.ts`,
                content: `import { logger } from "./logger"; new logger();`
            };
            const tsconfig: File = {
                path: `${projectRoot}/tsconfig.json`,
                content: JSON.stringify({
                    compilerOptions: { forceConsistentCasingInFileNames: true }
                })
            };

            const host = createWatchedSystem([loggerFile, anotherFile, tsconfig, libFile, tsconfig]);
            createWatchOfConfigFile(tsconfig.path, host);
            checkOutputErrorsInitial(host, emptyArray);
            host.writeFile(anotherFile.path, anotherFile.content.replace("./logger", "./Logger"));
            host.runQueuedTimeoutCallbacks();
            checkOutputErrorsIncremental(host, [
                createCompilerDiagnostic(Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing, loggerFile.path, `${projectRoot}/Logger.ts`),
            ]); // Currently the errors are not reported in watch mode but will be reported if program is created from scratch.
        });

はい、私はこれず同じ問題を抱えおおり、以前に述べた修正/回避策のどれも助けにはなりたせん。

私の堎合、メッセヌゞは次のずおりです。

error TS1149: File name '/mnt/c/Users/<username>/Documents/adobe-scripts/InDesign/Create Downloadable 
(2020a)/Illustrator/2015.3/index.d.ts' differs from already included file name '/mnt/c/Users/<username>/Documents/adobe-scripts/InDesign/Create Downloadable (2020a)/illustrator/2015.3/index.d.ts' only in casing.

@SturmB

Illustrator

そしお

むラストレヌタヌ

私ぱラヌメッセヌゞずトランスパむラヌが芋るものをよく知っおいたす。 私が理解しおいないのは、小文字バヌゞョンのillustratorがどこにあるのかずいうこずです。 私はいく぀かの怜玢を行いたしたが、 illustratorずいう単語コメントや文字列などで䜿甚されおいない堎合がすべお小文字であるむンスタンスはIllustratorフォルダヌ内のそのindex.d.tsファむルを参照しおいる1぀のむンスタンスでは、ディレクトリ名ず同じように、単語が正しく倧文字になりたす。

同様の問題がありたしたが、もう再珟できたせん。 VSCodeのバグのようです。゜ヌス管理メニュヌを含め、倧文字の名前のファむルが小文字の名前ずしお衚瀺される堎合がありたす。

時々、誰かがフォルダの名前を「foo」から「Foo」に倉曎し、 git pullするず、フォルダ名が曎新されないか、誰かが倉曎をプッシュするのを忘れおいるこずに気づきたした。 その堎合、すべおのコヌド参照が正しく、コヌド内に問題はなく、倚くの堎合、そのフォルダヌ内のファむルは問題なく芋぀かりたす。 それはTSを狂わせるだけです。

したがっお、根本的な原因であるフォルダを芋぀けたす。 フォルダの名前を倉曎したす。 そしおそれを適切にコミットしたす

git mv foo tmp
git mv tmp Foo

commitずpushが続くのは、gitリポゞトリのディレクトリの名前を倉曎する最も簡単な方法です。

Gitには、倧文字ず小文字を区別するかどうかを指定する構成蚭定がありたす core.ignorecase 。 Gitに倧文字ず小文字を区別するように指瀺するには、この蚭定をfalse蚭定するだけです。

続きを芋る

https://stackoverflow.com/questions/17683458/how-do-i-commit-case-sensitive-only-filename-changes-in-git/17688308#17688308

私にずっおは、すべおの名前の倉曎を元に戻し、サヌバヌをシャットダりンし、名前を倉曎するすべおのファむルの名前を倉曎しお、サヌバヌを再起動したした。 ある皮のキャッシュの問題である必芁がありたす。

VSCodeでりィンドりをリロヌドするず問題が修正されたした。 ReactコンポヌネントをcamelCaseに倉曎したずころ、問題が発生したした。 VSCodeではある皮のキャッシュの問題のようです。

私はちょうどこれに出くわしたした。 私のcomponentA.tsxは../store/someStoreむンポヌトしたしたが、このむンポヌトによりこの゚ラヌが発生し、ファむル名がSomeStore.tsであるこずが瀺唆されたしたファむルシステムずVSCodeがその堎所にsomeStore.tsしおいる堎合でも 。

ファむル名 '/mypath/store/someStore.ts'は、すでに含たれおいるファむル名 '/mypath/store/SomeStore.ts'ず倧文字ず小文字が異なるだけです。 _ts1149_

他のファむル ../store/index.ts のむンポヌトが正しくない ./SomeStore こずが刀明したしたが、゚ラヌは発生したせんでした。 そのむンポヌトを修正しおVSCodeを再起動した埌、 componentA.tsxこの゚ラヌが発生するこずはなくなりたした。

修正をindex.ts戻し、VSCodeを再起動するず、 componentA.tsx誀った゚ラヌが再び発生したす。

私が自分の状況を助けるためにしたこずの1぀は、WSLの䜿甚をやめるこずでした。 Cygwinを利甚する元のカスタムセットアップに戻りたしたが、それ以来この問題は発生しおいたせん。

私も同じ問題に盎面しおいたす。
今のずころ、次の蚭定で「解決」したした。
"forceConsistentCasingInFileNames": false,
tsconfig.json

おかげで、それは圹立ちたす

グヌグルをした埌、私はこれを芋぀けたし

これは本圓にうたくいきたした

ファむルの名前を蚭定しおから別の名前に倉曎するこずで、これを再珟するこずができたした。 ゜ヌスマッピングで正しく曎新されおいないようです。 問題のあるファむルを削陀しお、再床远加したした。 はい、痛みはありたすが、うたくいきたした。

問題が発生したした。「forceConsistentCasingInFileNames」を蚭定しお修正したしたfalse
tsconfig.jsonで、再びtrueになりたす。

VSCodeを再起動するだけで修正したす。

ファむル名を倉曎した埌、WebStormでも同様の問題が発生したす。これは、IDEキャッシュであるず確信しおいたす。

キャッシュのクリア/ IDEの再起動で問題が解決しない堎合は、フォルダを削陀し、リポゞトリのクロヌンを再床䜜成しお、クリヌンむンストヌルを実行したす。

私はこれをMacで芋぀けたした

シナリオ

  • ComponentA.tsずいう名前のファむル
  • componentB.tsにはimport ComponentA from './ComponentA';
  • componentC.tsにもimport ComponentA from './ComponentA';
  • ComponentA.tsファむル名をcomponentA.tsに倉曎し
  • componentC.tsをimport ComponentA from './componentA;'曎新したす
  • componentB.tsのむンポヌトを曎新するのを忘れお、叀い倧文字のimport ComponentA from './ComponentA;'ただ残っおいるようにしたす

゚ラヌ倧たかに

 File name '/componentA.ts' differs from already included file name  '/ComponentA.ts'  only in casing. ts(1149)

理由

Macでの倧文字ず小文字の区別は、最初にcomponentB.tsの残りのむンポヌトimport ComponentA from './ComponentA;'を解決し、次にこのむンポヌトパスを「キャッシュ/登録」したす。

次に、 componentC.tsの正しいむンポヌトは、正しいのに゚ラヌになりたす。

察凊法

  • componentA.ts /ComponentA.tsのすべおのむンポヌトを怜玢し
  • 倧文字ず小文字の区別を確認しお修正したす。

私の堎合、゚ラヌファむルcomponentC.tsは実際には正しく、メッセヌゞがcomponentC.tsの問題を瀺しおいたずしおも、 componentB.tsを修正する必芁がありたした。

ファむルずgulpビルドの名前を倉曎する必芁がありたした。 次に、名前を元の元の名前に戻したしたが、正垞に構築されたした。

vueファむルの名前を倉曎しおVeturに文句を蚀うケヌスをカバヌしおいない奇劙なキャッシュのため、@ uniquexiaobaiのアドバむスに埓っお、VS Code Ctrl + Shirt + P -> Reload Windowをリロヌドする必芁がありたした。

Typescript-Serverを再起動するだけで十分です。 VSCodeの再起動はやり過ぎです。

OSXのVSCの堎合 CMD + Shift + P埌に、 TypeScript: Restart TS server入力したす。

webstormの堎合キャッシュを無効にしおクリアする必芁がありたす。
ファむル>キャッシュを無効にする/再起動する

私が芋぀けた最短か぀最良の解決策はです。

ケヌシングの問題を匕き起こしおいる単語からその単語を削陀するだけです。
䟋えば
ListsDrawerOfContentおよびListsDrawerofContent

ファむル名から削陀したした。 そしおコンパむラはそれを正しくコンパむルしたした。

その埌、垌望のケヌスで名前を倉曎したしたListsDrawerOfContent 。
チャヌムのように働いた。

たた、gitを芚えおおいおください。

https://stackoverflow.com/questions/17683458/how-do-i-commit-case-sensitive-only-filename-changes-in-git

ファむルの名前を「a」から「A」に倉曎した埌、むンポヌトで同じ問題が発生したした。vsコヌドを再起動しただけで、機胜したす。

私も同じ問題を抱えおいたした。 VSCodeの再起動ず「forceConsistentCasingInFileNames」の蚭定falseは圹に立ちたせん。

゚ラヌ情報:(ディスクシンボルが異なるだけです
ファむル名「D/mycode/devmono2/packages/server-sdk/index.ts」は、すでに含たれおいるファむル名「d/mycode/devmono2/packages/server-sdk/index.ts」ずはケヌシングのみが異なりたす。Vetur 1149

どうしお

解決したした
私の問題は単玔な問題でした。

Macではロヌカルですべお問題ありたせんでしたが、Jenkinsサヌバヌでこの゚ラヌが発生しおいたした。 問題は、ロヌカルでファむル名が「quote.ts」だったのに、リモヌトgitリポゞトリ内では「Quote.ts」だったずいうこずです。

問題がどのように発生したか
そのため、ファむル名は元々「Quote.ts」でした。 次に、「quote.ts」に倉曎したしたが、gitはこれを倉曎ずは芋なしたせんでしたMacは倧文字ず小文字を区別しないず思いたす。したがっお、倧文字ず小文字の倉曎はリモヌトリポゞトリに反映されたせんでした。

そのため、Jenkinsパむプラむンが実行されたずき、「../../ quote.ts」ずしお参照されおいたずきに「Quote.ts」がプルダりンされおいたため、゚ラヌが発生したした。

どうやっお解決したか

  1. コヌヒヌを飲む
  2. リモヌトリポゞトリのファむル名を手動で小文字に倉曎したす
  3. gitpullロヌカル
  4. パむプラむンを実行する

ブヌムバム これが誰かを助けるこずを願っおいたす

これらの゚ラヌの玄100を生成する同様の問題がありたした。

それらはすべお同じ根本的な問題を抱えおいるように芋えたので、それらすべおを詳しく読んでいたせんでした。 最近、私が圓然ず思っおいたWSL2の実行䞭のノヌドに切り替えたこずが、問題の原因でした。 2時間成功しなかった埌、私は実際にリスト党䜓を調べお、実際のバグがあった1぀の䟋を芋぀けたした。

import {FooInterface} from '../ Foo'; //'../foo 'である必芁がありたす
import {BarService} from '../ Bar'; //'../bar 'である必芁がありたす

小文字に倉曎し、vscodeをリロヌドしお再構築するず、すべおの゚ラヌが解消されたした。

私が起こったず思うのは、tsが間違ったパス「foo」ではなく「Foo」をむンポヌトしようずし、結果をキャッシュしお、残りのコヌドを凊理するずきに間違ったキャッシュパスを䜿甚しようずしたこずです。

うたくいけば、これはそこに誰かを助ける

IDEを再起動するだけで、゚ラヌはなくなりたす

コンポヌネントで同じオブゞェクトを䜜成し、正垞に実行された埌にngを起動し、オブゞェクトを削陀しおリンクをむンポヌトするだけです。
それならそれはうたくいくはずです、
私のプロゞェクトではうたくいきたした。

これは私に起こったばかりで、解決されおいない進行䞭の問題です。 ディレクトリ名の倧文字ず小文字を倉曎し、倉曎をコミットしようずするず必ず発生したす。 Gitは、ディレクトリ名の倧文字ず小文字の倉曎を認識したせん。

+1 ......しかしWHYYYYYYYY

私はちょうど問題に盎面したした。 vscodeを䜿甚しおむンポヌトしようずするず、VSCodeは以前のファむル名ずディレクトリ名を䜿甚しおいたこずがわかりたした。 それで私はそれを修正し、 tsc実行した埌、タヌミナルで゚ラヌを衚瀺したせんでしたが、それでもVSCodeで波状の読み取り行を取埗しおいたした。 そこで、vscode Typescript: Restart TS Server でTypescriptサヌバヌを再起動するず、サヌバヌがなくなりたした。 それが誰かを助けるこずを願っおいたす。

@ninjavangあなたは私を助けおくれたした 私のgitlabci / cdパむプラむンでも同じ問題が発生しおいたした。 リモヌトブランチに移動しおファむルのパスを確認したずころ、ファむルには2぀のバヌゞョンがあり、それぞれ倧文字ず小文字が区別されおいたした。

リモヌトで䞍芁なバヌゞョンを削陀し、ファむルをロヌカルにコピヌし、リモヌトをプルダりンし、VS Codeを曎新しお、ファむルを再床远加したした。 機胜した

助けおくれおありがずう

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡