Aws лямбда-функция в Java (весенняя загрузка) не может создать файл? - PullRequest
0 голосов
/ 10 октября 2019
 bool = tempFile.createNewFile();

приведенная выше строка кода, вызывающая java.io.IOException: Файловая система только для чтения, мы пытаемся создать файл в лямбда-функции aws (загрузка с помощью Java-загрузки), но мы не можем создать файл?

Ответы [ 3 ]

3 голосов
/ 10 октября 2019

Чтобы убедиться, что ваш файл идет туда, куда вы хотите в среде Lambda, вы можете создать файл, например:

File tempFile = File.createTempFile("tmp", null, new File("/tmp"));

Однако, это не делает именно то, что делает createNewFile()тем, что он не будет проверять, существует ли файл с таким именем. Если это требуется (и я бы поставил под сомнение этот дизайн в среде Lambda), то это не будет прямой заменой.

РЕДАКТИРОВАТЬ

Звучит как вывы просто пытаетесь создать файл. Поэтому вместо использования createTempFile просто используйте что-то вроде:

File newFile = new File("/tmp/rose.jpeg");
boolean created = newFile.createNewFile();
0 голосов
/ 10 октября 2019

На самом деле вы можете использовать папку /tmp для хранения файлов, просто имейте в виду, что она будет удалена после завершения работы экземпляра Lambda. Также существует ограничение в 500 МБ.

Какой путь вы используете для сохранения файла?

0 голосов
/ 10 октября 2019

aws-lambda равно serverless, вы не можете создавать файлы в лямбда-выражении. Вы должны создать s3 и явно передать путь к файлу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...