我开发了.net核心控制台应用程序。它连接Azure表存储并从azure下载到本地数据库。应用程序在Windows 10 PC上没有任何问题。但是当我将它发布到运行Lubuntu的PC并尝试运行时,我收到“无效的runtimeconfig.json错误”。
runtimeconfig.json的内容是:
{
"runtimeOptions": {
"framework": {
"name": "Microsoft.NETCore.App",
"version": "1.1.2"
}
}
}
和dotnet --info的输出是:
NET Command Line Tools (1.0.4)
Product Information:
Version: 1.0.4
Commit SHA-1 hash: af1e6684fd
Runtime Environment:
OS Name: ubuntu
OS Version: 17.04
OS Platform: Linux
RID: ubuntu.16.10-x64
Base Path: /usr/share/dotnet/sdk/1.0.4
适用于Linux的SDK是最新版本。任何人都有任何想法可能有什么问题以及如何解决它?
答案 0 :(得分:9)
经过一些试验和错误,我已经解决了这个问题。问题实际上不是无效的配置文件。当dotnet运行dll文件时,它会创建一个xxxx.runtimeconfig.dev.json,xxxx是dll的名称。但是在我的情况下由于Lubuntu中缺少文件夹和文件访问权限,dotnet无法创建runtimeconfig.dev.json文件。
我通过执行以下终端命令(从folderholdingmyapp的父目录运行此命令)修改了保存我的应用程序的文件夹的访问权限。
chmod -R 1744 folderholdingmyapp