-1

Смотрите это: видео ссылка на YouTube

Здесь cmd отлично работает при работе с Java, но не с Powershell. Почему так и как заставить Powershell работать с ним?

Обновление (добавление команд и выходов, поэтому вы можете пропустить просмотр видео)

CMD:

C:\Users\reesh\Desktop\Java>javac MyFirstJavaProgram.java

C:\Users\reesh\Desktop\Java>java MyFirstJavaProgram
Hello World

C:\Users\reesh\Desktop\Java>

Powershell:

PS C:\Users\reesh\Desktop\Java> javac .\MyFirstJavaProgram.java
PS C:\Users\reesh\Desktop\Java> java .\MyFirstJavaProgram
Error: Could not find or load main class .\MyFirstJavaProgram
Caused by: java.lang.ClassNotFoundException: /\MyFirstJavaProgram
PS C:\Users\reesh\Desktop\Java>

Другими словами, PS выдает ошибку, а cmd - нет.

1 ответ1

1

По умолчанию Powershell имеет конфигурацию безопасности, которая при попытке запустить программу, просто указав имя, не выполняет поиск в текущей папке, такой как cmd. Вместо этого он просто ищет вашу переменную PATH.

Поэтому первое исправление - сделать javac для ./javac . Во-вторых, когда пишешь .\MyFirstJavaProgram , Java, похоже, не может прочитать имя файла. Вместо этого попробуйте сделать это косой чертой ./MyFirstJavaProgram .

Заключительная команда ./java.c ./MyFirstJavaProgram . Хотя я хочу подчеркнуть это, вам не нужно ./ на MyFirstJavaProgram, потому что это аргумент, а не скрипт или исполняемый файл.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .