Миграция Azure Функции для версии 3.x с проектом Gradle Java, но ошибка «Значение не может быть пустым» - PullRequest
0 голосов
/ 09 марта 2020

Привет, у меня есть проект gradle Java, который использует функции Azure, и мы переходим с версии 2.x на версию 3.x. Логически, я хотел увеличить версию до 3.x локально и проверить, чтобы ничего не сломалось, однако я получаю сообщение об ошибке ( Я опубликую полное сообщение об ошибке в конце этого поста, потому что оно намного длиннее ):

[3/9/2020 6:25:13 PM] System.Private.CoreLib: Value cannot be null. (Parameter 'path1').
Value cannot be null. (Parameter 'provider')
Application is shutting down...

Теперь, супер странная вещь, в сообщении об ошибке (я покажу его в более длинной версии ниже), она имеет ссылку на комплект расширений, где какой-то индекс. json есть. Если я щелкну по нему и открою его в своем браузере, сразу после этого я смогу запустить ./gradlew azureFunctionsRun локально, и все будет работать нормально: Ищем пакет расширения Microsoft. Azure .Functions.ExtensionBundle at (null) [3 / 9/2020 6:25:13 PM] Извлечение информации о версиях пакета расширений Microsoft. Azure .Functions.ExtensionBundle доступно на https://functionscdn.azureedge.net/public/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle/index.json

Это на самом деле не делает никаких Мне кажется, что после дополнительных исследований кто-то опубликовал сообщение о том, что если загрузка ExtensionBundle займет слишком много времени, Azure время выполнения завершится сбоем / сбоем / не запустится должным образом:

https://www.gitmemory.com/issue/Azure/azure-functions-host/4959/593681079

Кто-нибудь здесь знаком с Azure функциями и / или мигрировал на версию 3.x или более позднюю версию? На веб-сайте Microsoft, похоже, они упоминают только обновление и какие переменные нужно редактировать при использовании проекта Maven Java (я использую Gradle):

https://docs.microsoft.com/en-us/azure/azure-functions/functions-versions

Кроме того, я нашел документацию, вращающуюся вокруг Azure функций и Gradle на github, но некоторые из предложенных ими команд, похоже, не работали, т.е. добавление свойства "appSettings" в build.gradle с FUNCTIONS_EXTENSION_VERSION = ~ 3: https://github.com/microsoft/azure-maven-plugins/wiki/Azure-Functions-Gradle-Plugin- (Предварительный просмотр)

Если это что-то значит, это то, как мой хост. json файл выглядит так:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[1.*, 2.0.0)"
  }
}

и my local.settings. json:

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "AzureWebJobsDashboard": "",
    "FUNCTIONS_WORKER_RUNTIME": "java",
    "FUNCTIONS_EXTENSION_VERSION": "~3"
  }
}

Если у кого-то есть понимание, я был бы очень признателен. Я также могу опубликовать любые фрагменты своего build.gradle, которые кто-нибудь хотел бы увидеть. Спасибо.

Full error messsage:
Azure Functions Core Tools (3.0.2106 Commit hash: 5431fca4f603bf9446d7dd2d5f96a43b5f69b5cb)
Function Runtime Version: 3.0.13107
[3/9/2020 6:25:11 PM] FUNCTIONS_WORKER_RUNTIME set to java. Skipping WorkerConfig for language:node
[3/9/2020 6:25:11 PM] FUNCTIONS_WORKER_RUNTIME set to java. Skipping WorkerConfig for language:powershell
[3/9/2020 6:25:11 PM] FUNCTIONS_WORKER_RUNTIME set to java. Skipping WorkerConfig for language:python
[3/9/2020 6:25:11 PM] Starting worker process:C:\Program Files\Java\jdk1.8.0_241\bin\java  -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -noverify -Djava.net.preferIPv4Stack=true -jar "C:\Users\KBRV37\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin
\workers\java\azure-functions-java-worker.jar" --host 127.0.0.1 --port 53364 --workerId 0f9b1658-9070-47d5-9175-927c2de3b987 --requestId 0d91a6fb-436a-4747-84cb-1b452b6f5d74 --grpcMaxMessageLength 134217728
[3/9/2020 6:25:11 PM] C:\Program Files\Java\jdk1.8.0_241\bin\java process with Id=17808 started
[3/9/2020 6:25:11 PM] [INFO] {Application.main}: Azure Functions Java Worker  version [ 1.5.2-SNAPSHOT]
[3/9/2020 6:25:12 PM] [INFO] {MessageHandler.handle}: Message generated by "StartStream.Builder"
[3/9/2020 6:25:13 PM] Building host: startup suppressed: 'False', configuration suppressed: 'False', startup operation id: '578d2375-a458-44f0-837c-7d165eb8ed5a'
[3/9/2020 6:25:13 PM] Reading host configuration file 'C:\git\edge_bootstrap_ms\build\azurefunctions\edge-bootstrap-ms\host.json'
[3/9/2020 6:25:13 PM] Host configuration file read:
[3/9/2020 6:25:13 PM] {
[3/9/2020 6:25:13 PM]   "version": "2.0",
[3/9/2020 6:25:13 PM]   "extensionBundle": {
[3/9/2020 6:25:13 PM]     "id": "Microsoft.Azure.Functions.ExtensionBundle",
[3/9/2020 6:25:13 PM]     "version": "[1.*, 2.0.0)"
[3/9/2020 6:25:13 PM]   }
[3/9/2020 6:25:13 PM] }
[3/9/2020 6:25:13 PM] Reading functions metadata
[3/9/2020 6:25:13 PM] 3 functions found
[3/9/2020 6:25:13 PM] Looking for extension bundle Microsoft.Azure.Functions.ExtensionBundle at (null)
[3/9/2020 6:25:13 PM] Fetching information on versions of extension bundle Microsoft.Azure.Functions.ExtensionBundle available on https://functionscdn.azureedge.net/public/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle/index.json
[3/9/2020 6:25:13 PM] A host error has occurred during startup operation '578d2375-a458-44f0-837c-7d165eb8ed5a'.
[3/9/2020 6:25:13 PM] System.Private.CoreLib: Value cannot be null. (Parameter 'path1').
Value cannot be null. (Parameter 'provider')
Application is shutting down...
[3/9/2020 6:25:13 PM] Initialization cancellation requested by runtime.
[3/9/2020 6:25:13 PM] Shutting down language worker channels for runtime:java
[3/9/2020 6:25:13 PM] Stopping host...
[3/9/2020 6:25:13 PM] Host shutdown completed.

> Task :azureFunctionsRun FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':azureFunctionsRun'.
> Process 'command 'cmd.exe'' finished with non-zero exit value 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...