Файл не найден java
Adam @ Adam ~ / Dropbox / linuxWorkspace / Netbeans / EveMarketCalculater / dist $ java -jar "EveMarketCalculater.jar"
Текущий системный каталог: / home / adam / Dropbox / linuxWorkspace / Netbeans / EveMarketCalculater / dist
Java.io.FileNotFoundException: файл: /home/adam/Dropbox/linuxWorkspace/Netbeans/EveMarketCalculater/dist/EveMarketCalculater.jar! /inputOutput/TypeID.csv (такого файла или каталога нет) в java.ioream.FileInputStative Method) в java.io.FileInputStream.open (FileInputStream.java:195) в java.io.FileInputStream. (FileInputStream.java:138) в java.io.FileInputStream. (FileInputStream.java:93) в java.io. FileReader. (FileReader.java:58) на inputOutput.csvParser.readFile (csvParser.java:54) на inputOutput.csvParser. (CsvParser.java:24) на evemarketcalculater.EveMarketCalculater.main (EveMarketjavaCalculater).
Java.io.FileNotFoundException: файл: /home/adam/Dropbox/linuxWorkspace/Netbeans/EveMarketCalculater/dist/EveMarketCalculater.jar! /inputOutput/Regions.csv (такого файла или каталога нет) в java.io.Filepen0Streamative. Method) в java.io.FileInputStream.open (FileInputStream.java:195) в java.io.FileInputStream. (FileInputStream.java:138) в java.io.FileInputStream. (FileInputStream.java:93) в java.io. FileReader. (FileReader.java:58) на inputOutput.csvParser.readFile (csvParser.java:54) на inputOutput.csvParser. (CsvParser.java:24) на evemarketcalculater.EveMarketCalculater.main (EveMarketjavaCalculater).
Java.io.FileNotFoundException: файл: /home/adam/Dropbox/linuxWorkspace/Netbeans/EveMarketCalculater/dist/EveMarketCalculater.jar! /inputOutput/SolarSystems.csv (такого файла или каталога нет) в java.ioream.FileInputStative Method) в java.io.FileInputStream.open (FileInputStream.java:195) в java.io.FileInputStream. (FileInputStream.java:138) в java.io.FileInputStream. (FileInputStream.java:93) в java.io. FileReader. (FileReader.java:58) на inputOutput.csvParser.readFile (csvParser.java:54) на inputOutput.csvParser. (CsvParser.java:24) на evemarketcalculater.EveMarketCalculater.main (EveMarketjavaCalculater).
Java.io.FileNotFoundException: файл: /home/adam/Dropbox/linuxWorkspace/Netbeans/EveMarketCalculater/dist/EveMarketCalculater.jar! /inputOutput/MyOrders.csv (такого файла или каталога нет) в java.ioreamative.openInput Method) в java.io.FileInputStream.open (FileInputStream.java:195) в java.io.FileInputStream. (FileInputStream.java:138) в java.io.FileInputStream. (FileInputStream.java:93) в java.io. FileReader. (FileReader.java:58) в inputOutput.csvParser.readFile (csvParser.java:96) в inputOutput.csvParser. (CsvParser.java:29) в evemarketcalculater.EveMarketCalculater.main (EveMarketjavaCalculater).
Вот исходный код того, как я получаю доступ к этим файлам:
Любая подсказка, почему это не работает? Очевидно, что он отслеживает правильный путь к файлу, и файлы существуют внутри файла .jar по этим путям. Я работаю в командной строке Linux, если это важно.
But when I try to access it in the following code this file not found error occurs:
Either use a full path as already said, or create an output file in your program to see where it is stored, then move your input file to that location
When you run the program, the "word.txt" file needs to be in the same directory as the .class file generated by the compiler, not the .java file. In an IDE like Netbeans, put the file in the project folder, not the source folder
8 Answers 8
Put the word.txt directly as a child of the project root folder and a peer of src
Disclaimer: I'd like to explain why this works for this particular case and why it may not work for others.
Why it works:
When you use File or any of the other FileXxx variants, you are looking for a file on the file system relative to the "working directory". The working directory, can be described as this:
When you run from the command line
C:\EclipseWorkspace\ProjectRoot\bin > java com.mypackage.Hangman1
the working directory is C:\EclipseWorkspace\ProjectRoot\bin . With your IDE (at least all the ones I've worked with), the working directory is the ProjectRoot . So when the file is in the ProjectRoot , then using just the file name as the relative path is valid, because it is at the root of the working directory.
Similarly, if this was your project structure ProjectRoot\src\word.txt , then the path "src/word.txt" would be valid.
Why it May not Work
For one, the working directory could always change. For instance, running the code from the command line like in the example above, the working directory is the bin . So in this case it will fail, as there is not bin\word.txt
Secondly, if you were to export this project into a jar, and the file was configured to be included in the jar, it would also fail, as the path will no longer be valid either.
That being said, you need to determine if the file is to be an embedded-resource (or just "resource" - terms which sometimes I'll use interchangeably). If so, then you will want to build the file into the classpath, and access it via an URL. First thing you would need to do (in this particular) case is make sure that the file get built into the classpath. With the file in the project root, you must configure the build to include the file. But if you put the file in the src or in some directory below, then the default build should put it into the class path.
You can access classpath resource in a number of ways. You can make use of the Class class, which has getResourceXxx method, from which you use to obtain classpath resources.
For example, if you changed your project structure to ProjectRoot\src\resources\word.txt , you could use this:
getResourceAsStream returns an InputStream , but obtains an URL under the hood. Alternatively, you could get an URL if that's what you need. getResource() will return an URL
For Maven users, where the directory structure is like src/main/resources , the contents of the resources folder is put at the root of the classpath. So if you have a file in there, then you would only use getResourceAsStream("/thefile.txt")
javac: file not found: first.java Usage: javacI have a filename named "first.java" saved on my desktop in notepad++. When I run the cmd command "javac first.java" it gives me this error.
I know you are required to go to C:\Programfiles\java\jdk.
and in my C:\Program Files\Java\ I have thesE folders
"jdk1.8.0" "jre6" "jre8"
In C:\Program Files (x86)\Java I have this folder
"jre6"
The Environmental settings are as follows
CLASSPATH
C:\Program Files\Java\jre8\bin
Variable name: LEJOS_NXT_JAVA_HOME
Variable value: C:\Program Files (x86)\Java\jdk1.6.0_21\bin
PATH
Variable name: PATH
Variable value: C:\Program Files\Java\jdk1.8.0\bin
Please tell me where I am going wrong. I have read several posts on the Internet, and I can't figure it out.
Problem from this question is NOT about inability to call javac.exe (so no need to fix path ), but that WHILE executing javac it couldn't find first.java file which should be compiled.
Похожие вопросы
Решение
Типа, так
C:\\AMD\\Radeon-Crimson-16.9.2-SB-SATA-AHCI-Win10-Win8.1-Win7-64Bit-Sep29\\Bin64\\atdcm64a.sys
где он это пишет? На скриншоте пишет совершенно другое
Добавлено через 1 минуту
На скрине у вас слеши у AMD в другую сторону
И, может я что-то не правильно вижу, но у вас, по-моему, JOptionPane находится ЗА блоком catch и "файл не найден" будет писаться в случае, даже если файл нашелся
Не удается запустить программу. Не удается найти указанный файл. Microsoft visual studio
Добрый день. Начал работу с программой, написал первую программу. текст приложу ниже. Программа.
Не удается запустить программу (Не удается найти указанный файл)
помогите кто компетентен и может внятно обьяснить что к чему (спасибо)
Не удается запустить программу. Не удается найти указанный файл
Так ругается при нажатии F5. Что это? Построение прошло успешно. Добавлено через 1 час 26.
Не удается запустить программу (не удается найти указанный файл)
Здравствуйте. Не знаю, в чем проблема. Я чего-то не знаю, надеюсь на помощь. Создаю новый проект.
Не удается запустить программу, не удается найти указанный файл
Здравствуйте! Ранее пользовался Visual Studio 2010 и 2015, все правильно написанные коды работали.
У меня есть имя файла «first.java», сохраненное на моем рабочем столе в notepad ++. Когда я запускаю команду cmd "javac first.java", это выдает мне эту ошибку.
Я знаю, что вам нужно перейти в C: \ Programfiles \ java \ jdk.
и в моих C: \ Program Files \ Java \ у меня есть эти папки
"jdk1.8.0" "Jre6" "Jre8"
В C: \ Program Files (x86) \ Java У меня есть эта папка
"Jre6"
Настройки среды следующие:
CLASSPATH
C: \ Program Files \ Java \ jre8 \ bin
Имя переменной: LEJOS_NXT_JAVA_HOME
Значение переменной: C: \ Program Files (x86) \ Java \ jdk1.6.0_21 \ bin
PATH
Имя переменной: PATH
Значение переменной: C: \ Program Files \ Java \ jdk1.8.0 \ bin
Пожалуйста, скажите мне, где я иду не так. Я прочитал несколько постов в Интернете, и я не могу понять это.
Как nAvEeD kHaN , вам нужно указать свой путь.
Но чтобы в будущем ваш JDK мог использовать преимущества таких инструментов, как Maven, я бы назначил путь JAVA_HOME в свою папку JDK, а затем просто добавьте каталог %JAVA_HOME%\bin в свой PATH
- щелкните правой кнопкой мыши «Мой компьютер» и выберите «Свойства» в контекстном меню.
- Слева выберите "Расширенные настройки системы".
- Во всплывающем окне «Свойства системы» на вкладке «Дополнительно» выберите «Переменные среды»
- Во всплывающем окне «Переменные среды» в разделе «Системные переменные» нажмите «Создать»
- Введите " JAVA_HOME " в поле "Имя переменной"
- Вставьте путь к папке JDK в поле "Значение переменной".
- Нажмите ОК
- В том же разделе выберите «Путь» и измените текст там, где написано:
blah;blah;blah; C: \ Program Files \ Java \ jdk1.8.0 \ bin; blah,blah;blah
blah;blah;blah; % JAVA_HOME% \ Bin; blah,blah;blah
Укажите также путь JRE
jre отвечает только за выполнение программы
Значение переменной PATH:
C:\Program Files\Java\jdk1.8.0\bin;C:\Program Files\Java\jre\bin;.;
Для Windows javac должна быть командой, которую вы можете запускать из любого места. Если это не (что само по себе странно), вам нужно запустить javac откуда он расположен, но перейдите в точное местоположение вашего файла классов Java, чтобы успешно скомпилировать его.
По умолчанию javac скомпилирует имя файла относительно текущего пути, и если он не может найти файл, он не скомпилирует.
Обратите внимание: вы можете использовать jdk1.8.0 только для компиляции , поскольку это будет единственный набор библиотек, который имеет javac содержится в нем. Помните: среда выполнения Java запускает классы Java; Java Development Kit компилирует их.
Похоже, у тебя правильный путь. Но каков ваш рабочий каталог? в командной строке:
это должно показать вашу версию Java. если это не так, вы не правильно указали Java в пути.
-sourcepath - это полный путь к вашему файлу .java, -d - это путь /каталог, в котором вы хотите разместить файлы .class, а затем, наконец, файл, который вы хотите скомпилировать (first.java).
У меня была та же проблема, и это было связано с моим именем файла. Если вы установили местоположение файла с помощью CD в CMD, а затем набрали DIR, он перечислит файлы в этом каталоге. Убедитесь, что отображается имя файла, и проверьте правильность написания и окончания имени файла.
Это должен быть файл .java, но мой был .java.txt. В инструкциях на веб-сайте учебных пособий по Java указано, что вам следует выбрать «Сохранить как текстовые документы типа», но для меня это всегда добавляет .txt в конец имени файла. Если я поменяю его на «Сохранить как Тип Все документы», это правильно сохранит имя файла.
У меня была такая же проблема, потому что я находился не в том каталоге, где находился мой файл. Поэтому, когда я запустил javac Example.java (для меня), он сказал, что не может его найти. Но мне нужно было пойти туда, где находился мой файл Example.java . Поэтому я использовал команду cd и сразу после этого местоположение файла. Это сработало для меня. Подскажите, поможет ли это! Спасибо!
У меня была такая же проблема. Причиной проблемы было создание текстового файла в блокноте и переименование его в файл Java. Это подразумевало, что файл был сохранен как файл WorCount.java.txt.
Чтобы решить эту проблему, мне пришлось сохранить файл как файл java в IDE или в Nodepad ++.
Процедура выполнения файла Java: После того, как вы сохранили файл MyFirstJavaProgram2.java
Введите полный путь к «Javac», а затем файл Java. Для выполнения вывода Путь, сопровождаемый комментарием затем следует
C: \ Program Files \ Java \ jdk1.8.0_101 \ bin> gavac C: \ Sample \ MyFirstJavaProgram2.java
C: \ Program Files \ Java \ jdk1.8.0_101 \ bin> java -cp C: \ Пример MyFirstJavaProgram2
Если это проблема, перейдите к месту, где присутствует javac, и введите
- блокнот Yourfilename.java
- запросит создание файла
- скажите "да" и скопируйте код из вашего предыдущего исходного файла в этот файл
- теперь выполните cmd ------> javac Yourfilename.java
Это будет работать наверняка.
Сначала установите переменные окружения в C: /Program Files /Java /jdk1.8.0 /bin. Скажем, ваш файл сохранен на диске C: Теперь откройте командную строку и перейдите в каталог с помощью c: javac имя_файла.java Имя файла Java
Убедитесь, что вы сохранили имя файла как .java.
Если он сохранен как имя текстового файла, файл не найдет ошибку, поскольку не может текстовый файл.
Вот как я выполнил программу без настроенной переменной среды.
Процедура выполнения файла Java: После того, как вы сохранили файл MyFirstJavaProgram.java
Введите полный путь к «Javac», а затем файл Java. Для выполнения вывода Путь, сопровождаемый комментарием затем следует
C: \ Program Files \ Java \ jdk1.8.0_101 \ bin> javac C: \ Sample \ MyFirstJavaProgram2.java C: \ Program Files \ Java \ jdk1.8.0_101 \ bin> java -cp C: \ Sample MyFirstJavaProgram2 Привет, мир
Иногда эта проблема возникает, если вы впервые создаете файл Java в своей системе. Расширение вашего файла Java сохраняется в виде текстового файла.
например, Example.java.txt (неверное расширение)
Вам нужно изменить расширение текстового файла на файл java.
Должно быть так:
Example.java (правое расширение)
просто откройте файл затем нажмите Сохранить как затем назовите это как first.java затем в этом поле есть еще один раскрывающийся список в этом раскрывающемся списке (сохранить как тип) выберите тип как и сохранить его теперь вы можете скомпилировать его
14 Answers 14
I had the same issue and it was to do with my file name. If you set the file location using CD in CMD, and then type DIR it will list the files in that directory. Check that the file name appears and check that the spelling and filename ending is correct.
It should be .java but mine was .java.txt. The instructions on the Java tutorials website state that you should select "Save as Type Text Documents" but for me that always adds .txt onto the end of the file name. If I change it to "Save as Type All Documents" it correctly saved the file name.
As KhAn SaAb has stated, you need to set your path.
But in order for your JDK to take advantage of tools such as Maven in the future, I would assign a JAVA_HOME path to point to your JDK folder and then just add the %JAVA_HOME%\bin directory to your PATH .
- right-click "My Computer" and choose "properties" from the context menu.
- Choose "Advanced system settings" on the left.
- In the "System Properties" popup, in the "Advanced" tab, choose "Environment Variables"
- In the "Environment Variables" popup, under the "System variables" section, click "New"
- Type "JAVA_HOME" in the "Variable name" field
- Paste the path to your JDK folder into the "Variable value" field.
- Click OK
- In the same section, choose "Path" and change the text where it says:
blah;blah;blah; C:\Program Files\Java\jdk1.8.0\bin; blah,blah;blah
blah;blah;blah; %JAVA_HOME%\bin; blah,blah;blah
I am new to java and don't know where is JAVA_HOME ?? and in PATH I already have this C:\Program Files\Java\jdk1.8.0\bin
For Windows, javac should be a command that you can run from anywhere. If it isn't (which is strange in and of itself), you need to run javac from where it's located, but navigate to the exact location of your Java class file in order to compile it successfully.
By default, javac will compile a file name relative to the current path, and if it can't find the file, it won't compile it.
Please note: You would only be able to use jdk1.8.0 to actually compile, since that would be the only library set that has javac contained in it. Remember: the Java Runtime Environment runs Java classes; the Java Development Kit compiles them.
учусь программированию Java.
писал код чтение файла .
и в коде в роде не высвечивается ошибки,
но путь к текстовому файлу не распознается.
пишет диалоговое окно которое я написал на случай ошибки.
помогите понять, что я напортачил
почему не могу запустить программу
Не удается найти указанный файл
Всем привет) почему он у меня выдает ошибку о том что не видит файл, хотя путь указал. Exception.
Не удается найти указанный файл
Помогите пожалуйста с такой проблемой. Надо из файла взять 2 числа, сложить их и вывести в другой.
Консольный калькулятор - Не удается найти указанный файл
Начал делать консольный калькулятор, в котором каждая операция представляет собой отдельный класс.
Java | Не удаётся найти указанный файл
Проблема состоит вот в чём. Сегодня скачал книжку Хортсмана: Java. Том 1. Основы.. До этого начал.
Популярные теги
Читайте также: