Khung được chỉ định 'Microsoft.AspNetCore.App', phiên bản '3.1.0' không được tìm thấy cho Linux Azure WebApp


9

Vấn đề

Sau khi nâng cấp Ứng dụng web .Net Core 2.2 Linux lên .Net Core 3.1 trong Azure, ứng dụng bị Specified framework 'Microsoft.AspNetCore.App', version '3.1.0' was not foundlỗi. Tôi thậm chí đã đi xa để tạo ra một ứng dụng web Linux mới với .Net Core 3.1 và sau dấu nhắc lệnh bash vẫn xuất ra dotnet --list-runtimesnhư 2.2.7.

Chi tiết

Trang web xuống

Lỗi ứng dụng

Đăng nhập

ứng dụng báo cáo không hoạt động vì không thể tìm thấy .net core 3.1.

Đăng nhập

Tạo ứng dụng web lõi .net mới

Ứng dụng web 3.1 linux ở Bắc Trung Bộ, cùng một vấn đề

Tạo ứng dụng web mới

Đảm bảo nó đã chạy ở Bắc Trung Mỹ

Theo https://aspnetcoreon.azurewebsites.net/ , nên có hỗ trợ đầy đủ .netCore 3.1

Vẫn .net lõi 2.2.7 nhắc cmd 2.2.7

opt/dotnet/runtimes liệt kê 3, 3.0 và 3.0.0, nhưng không có 3.1` nhập mô tả hình ảnh ở đây

Biến môi trường

Biến môi trường của tôi trong danh sách Azure FRAMEWORK_VERSION = lts, thay vì 3.1

Xuất bản

Điều này đã được xuất bản từ một đường ống dẫn phương pháp sử dụng tác vụ Azure AppService Deployment. 3.1 không có sẵn ở đây, vì vậy tôi đã chọnLTS

Devops phát hành đường ống

Cập nhật 1

Có vẻ như thủ phạm bị thiếu 3,1 trong ngăn xếp khung trong các tác vụ Dịch vụ Web / Ứng dụng web Azure Devops.

Bất cứ khi nào tôi xuất bản từ CI, khung ứng dụng web được cập nhật thành bất cứ điều gì được chọn trong danh sách thả xuống này. Nếu tôi tự thay đổi khung thành 3.1 trên Ứng dụng web Azure, trang web sẽ xuất hiện. Nhưng sau đó, lần xuất bản tiếp theo nó quay trở lại vì nó hoàn nguyên khung công tác trở lại các cài đặt trong ci.

Câu hỏi mới

Làm cách nào tôi có thể nhận đường dẫn Phát hành Azure Devops để xuất bản tác vụ .net core 3.1?

Cập nhật 2

Bài viết diễn đàn Azure Devops liên quan

Hiện đang được điều tra vào ngày 23/2/2020

.Net Core 3.1 triển khai đường ống dẫn đến Dịch vụ Ứng dụng Linux

Giải pháp đề xuất

  1. Sử dụng YML cho đường ống phát hành và thay đổi thủ công phiên bản từ 3.0sang 3.1, được ghi chú bằng câu trả lời và chuỗi này
  2. Nâng cấp từ framework dependentbản phát hành lên a self contained. Tài liệu tham khảo
  3. Hạ cấp xuống .NetCore 3.0

Thay vì sử dụng LTS, vui lòng thử sử dụng mới nhất (không nên dùng nhưng dù sao cũng nên thử, xem nó có hoạt động hay không)
Manish

Tôi đã làm, và nó đã không làm việc. Nhưng CI dường như là vấn đề. Mỗi lần tôi xuất bản với CI, nó sẽ thay đổi khung trên ứng dụng web thành bất cứ thứ gì được chọn trong CI. Nếu tôi truy cập dịch vụ ứng dụng sau khi CI xuất bản và thay đổi thủ công ngăn xếp thời gian chạy thành 3.1, trang web sẽ xuất hiện cho đến lần xuất bản tiếp theo.
w00ngy

KHÔNG đăng hình ảnh về mã, dữ liệu, thông báo lỗi, v.v. - sao chép hoặc nhập văn bản vào câu hỏi. Cách hỏi
Rob

Câu trả lời:


2

Tôi đã gặp tình huống tương tự, sử dụng thông tin bạn cung cấp Tôi có thể khắc phục sự cố bằng cách đặt giá trị theo cách thủ công trong tệp .yml Devops Pipelines Build .yml. Có vẻ như họ chỉ thiếu giá trị từ RunTime Stack thả xuống. Nếu bạn cập nhật thủ công tệp .yml xây dựng như được thấy ở đây:

nhập mô tả hình ảnh ở đây

Điều này sẽ chọn phiên bản khung thích hợp. Hy vọng rằng điều này sẽ khắc phục sự cố của bạn với việc triển khai Đường ống CI của Azure Devops.


Tôi tự hỏi nếu điều này sẽ giải quyết nó. Tôi sẽ thử cho nó một shot. Nó có thể là một chút công việc cho tôi để chuyển đổi toàn bộ bản phát hành của mình sang yml vì vậy tôi chưa thử nó. Tôi sẽ cho bạn biết kết quả! Đánh giá cao phản ứng !!
w00ngy

2
Có vẻ như có thể nhập trực tiếp chuỗi DOTNETCORE | 3.1 vào hộp Runtime Stack (và nó giải quyết vấn đề) - vì vậy không cần phải chuyển đổi đường ống phát hành sang yaml!
rdavisau

Tôi vừa định nói điều tương tự như @rdavisau - cách khắc phục dễ nhất là ghi đè phiên bản 3.1 vào hộp Runtime Stack và nó dường như có giá trị.
Will Appleby

KHÔNG đăng hình ảnh về mã, dữ liệu, thông báo lỗi, v.v. - sao chép hoặc nhập văn bản vào câu hỏi. Cách hỏi
Rob

rdavisau - điều này sẽ giúp tôi tiết kiệm rất nhiều thời gian! cười lớn.
w00ngy

1

Một giải pháp dễ dàng hơn là gõ DOTNETCORE|3.1vào danh sách thả xuống Stack Stack trong devops. (Cảm ơn quý vị!)

nhập mô tả hình ảnh ở đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.