Java - исключение файла не найдено - в общем расположении отсутствует косая черта - PullRequest
1 голос
/ 21 мая 2019

У меня есть один код лайнера «Hello World», который я выполняю, однако он терпит неудачу каждый раз, когда я пытаюсь его выполнить.

Судя по всему, в расположении общего диска отсутствует косая черта "/"Я просто не уверен, где это явно заявить или установить.Я прочесал настройки проекта, но безрезультатно.

Или, если я что-то упустил, пожалуйста, помогите.

Я новичок в Java, поэтому заранее извиняюсь.

Код:

public static void main(String[] args) {
    System.out.println("Hello World");
}

Ниже приведена ошибка:

Error:Internal error: (java.io.FileNotFoundException) \sgrau999bab01.ocean.corp.xyz.com\lllaaabbb$\.IdeaIC13\system\compile-server\helloworld_edf69b40\timestamps\data (The system cannot find the path specified)
java.io.FileNotFoundException: \sgrau999bab01.ocean.corp.xyz.com\lllaaabbb$\.IdeaIC13\system\compile-server\helloworld_edf69b40\timestamps\data (The system cannot find the path specified)
    at java.io.RandomAccessFile.open0(Native Method)
    at java.io.RandomAccessFile.open(RandomAccessFile.java:316)
    at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)
    at com.intellij.util.io.PagedFileStorage.resizeFile(PagedFileStorage.java:339)
    at com.intellij.util.io.PagedFileStorage.resize(PagedFileStorage.java:323)
    at com.intellij.util.io.ResizeableMappedFile.<init>(ResizeableMappedFile.java:59)
    at com.intellij.util.io.PersistentBTreeEnumerator.<init>(PersistentBTreeEnumerator.java:76)
    at com.intellij.util.io.PersistentEnumeratorDelegate.<init>(PersistentEnumeratorDelegate.java:38)
    at com.intellij.util.io.PersistentEnumeratorDelegate.<init>(PersistentEnumeratorDelegate.java:31)
    at com.intellij.util.io.PersistentHashMap.<init>(PersistentHashMap.java:110)
    at com.intellij.util.io.PersistentHashMap.<init>(PersistentHashMap.java:106)
    at org.jetbrains.jps.incremental.storage.AbstractStateStorage.createMap(AbstractStateStorage.java:137)
    at org.jetbrains.jps.incremental.storage.AbstractStateStorage.<init>(AbstractStateStorage.java:42)
    at org.jetbrains.jps.incremental.storage.TimestampStorage.<init>(TimestampStorage.java:36)
    at org.jetbrains.jps.incremental.storage.ProjectTimestamps.<init>(ProjectTimestamps.java:36)
    at org.jetbrains.jps.cmdline.BuildRunner.load(BuildRunner.java:101)
    at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:198)
    at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:113)
    at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler$1.run(BuildMain.java:133)
    at org.jetbrains.jps.service.impl.SharedThreadPoolImpl$1.run(SharedThreadPoolImpl.java:41)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

Выводожидается простое печатание текста "Hello World"

Ответы [ 2 ]

1 голос
/ 21 мая 2019

sgrau999bab01.ocean.corp.xyz.com выглядит как набор вложенных пакетов. Вы можете получить доступ к содержимому пакета, используя нотацию '.' в Java, но для чтения файлов мы должны предоставить путь к папке (используя '/' или '\')

Можете ли вы попробовать заменить

\sgrau999bab01.ocean.corp.xyz.com\lllaaabbb$\.IdeaIC13\system\compile-server\helloworld_edf69b40\timestamps\data

с

\sgrau999bab01\ocean\corp\xyz\com\lllaaabbb$\.IdeaIC13\system\compile-server\helloworld_edf69b40\timestamps\data

и проверить, работает ли он? Я не уверен в предпосылке вашего вопроса и, похоже, вы могли бы добавить несколько подробностей о том, откуда читается файл.

P.S. Я бы упомянул это как комментарий, но у меня нет привилегии делать это. Извинения.

0 голосов
/ 21 мая 2019

Проблема использования обратной косой черты в качестве разделителя пути к файлу заключается в том, что иногда они приводят к непреднамеренным символам.Например, путь к файлу:

String path = "some\npath";

фактически содержит символ новой строки.Один простой способ избежать этой проблемы - использовать вместо этого косую черту:

/sgrau999bab01.ocean.corp.xyz.com/lllaaabbb$/.IdeaIC13/system/compile-server/helloworld_edf69b40/timestamps/data
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...