2

Cygwin シェルを使用していくつかのファイルをコンパイルしようとしています。

コンパイルしようとしているJavaファイルは C:\Users\Programs\x.java です

Windows コマンド プロンプトの場合

C:\Users\Programs>javac x.java

エラーなし。

Cygwin シェルの場合

$ javac /c​​ygdrive/c/Users/Programs/x.java

エラー:

javac: ファイルが見つかりません: \cygdrive\c\Users\Programs\x.java

Windows コマンド プロンプトで実行しているのに cygwin シェルでエラーが発生するのはなぜですか?

4

2 に答える 2

4

javacWindows アプリケーションです。についての手がかりはありません/cygdrive。常にそれを念頭に置いて、有効な Windows パスを渡してください。

javac 'c:/Users/Programs/x.java'また、ほとんどの Unix シェルと同様に、\ を使用javac c\:/Users/Programs/x.java する必要がある場合はエスケープする必要があります。

于 2012-11-14T22:19:19.573 に答える
0

問題は、「cygdrive」がCygwin固有のライブラリに実装されている疑似デバイスであるということだと思います。実行している実行可能ファイルがそのライブラリにリンクされていない場合(およびOracle Java実行可能ファイルがリンクされていない場合)、「/cygdrive」パスコンポーネントは正しく解決されません。

于 2012-11-14T22:21:48.700 に答える