web-dev-qa-db-ja.com

ファイル名...はすでに含まれているファイル名とは異なります...大文字小文字のみ

Angular 6アプリケーションのVSCodeで次のエラーが発生します。

ERROR in src/app/providers/dynamic-data/dynamic-data.service.ts(5,26): error TS1149: File name '/Users/gibranshah/repos/eva/EVA/src/app/model/endpoint.ts' differs from already included file name '/Users/gibranshah/repos/eva/EVA/src/app/model/Endpoint.ts' only in casing.

Dynamic-data.service.tsの次の行は、

import { Endpoint } from '../../model/endpoint';

…Endpoint.tsという名前のファイルを指します。しかし、そのようなファイルはありません。代わりに、endpoint.tsがあります。 endpoint.tsには、次のようなクラスが含まれています。

export class Endpoint {
…
}

endpoint.tsは、ある時点で「Endpoint.ts」と名付けられていた可能性があります。

「Endpoint.ts」を検索しようとしましたが、すぐに見つかりました。

M0168169000:gibranshah gibranshah$ find * -name "Endpoint.ts"
M0168169000:gibranshah gibranshah$ 

VSCodeはファイルをキャッシュしますか? Endpoint.tsのキャッシュバージョンを使用している可能性はありますか?この問題を解決するにはどうすればよいですか?

7
Gibran Shah

私にはこの問題があり、それはディレクトリ名の大文字化の問題でした。

私はこのように私のコンポーネントをインポートしていました:

../proxies/test.component

../Proxies/test.component
1
MajiD

同様の問題があり、フォルダーを閉じることで解決しました。次に、[最近のワークスペース]リストの下部にある[その他]をクリックし、リストから[x](削除)ボタンをクリックしてワークスペースを削除します。次に、プロジェクトのフォルダーを読み込んだ後、通常どおりビルドします。したがって、おそらくキャッシュがあり、それはおそらくそれをクリアする1つの方法です。

1
pevgeniev

私は同じ問題を抱えており、何らかの理由で、いくつかのtsファイルで大文字の文字を使用して呼び出されていることを発見しました。次に、小文字に変更して機能します。

このモデルのtsファイルを削除して、angular-CLIで再度作成することもできます。

0
Dody