[英].NET core 2.1 Custom Nuget package. Problem with missing *.runtimeconfig.json file in the project where the package was installed
我有一个控制台应用程序项目(.net core 2.1),它是我的“自定义包”。 package 的 output 是 *.dll 文件。
我已经在不同的项目上安装了我自己的 package。
后
dotnet publish
我在发布文件夹中看到 *.dll (来自包)文件。
当我试图运行这个 dll 时。 我有这样的错误:
无法将文件 stream 用于 [D:\Daily\Daily*.deps.json]:没有此类文件或目录遇到致命错误。 在“D:\Daily\Daily”中找不到执行应用程序所需的库“hostpolicy.dll”。 无法作为独立应用程序运行。 - 应用程序作为独立应用程序运行,因为未找到“D:\Daily\Daily*.runtimeconfig.json”。 - 如果这应该是依赖于框架的应用程序,请添加“D:\Daily\Daily*.runtimeconfig.json”文件并指定适当的框架。
我花了一些时间为我的案例寻找解决方案,但我无法用我找到的可能解决方案来解决它。
当我这样做的时候
dotnet publish
在 Package 项目的输出中,我看到了所有我需要的东西。
当 package 安装在不同的项目中时会出现问题。
我试着用
<PropertyGroup>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
我的nuspec文件如下:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>ProjectName</id>
<version>1.0.0.0</version>
<title>ProjectName</title>
<authors></authors>
<owners></owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description></description>
<copyright>Copyright © 2021</copyright>
<dependencies>
<group targetFramework=".NETCoreApp2.1">
some dependencies
</group>
</dependencies>
<summary>ProjectName package</summary>
<contentFiles>
<files include="**" buildAction="None" copyToOutput="true" flatten="false" />
</contentFiles>
</metadata>
<files>
<file src="..\ProjectName\bin\Release\netcoreapp2.1\ProjectName.dll" target="lib\netcoreapp2.1\" />
<file src="..\ProjectName\bin\Release\netcoreapp2.1\ProjectName.deps.json" target="lib\netcoreapp2.1\" />
<file src="..\ProjectName\bin\Release\netcoreapp2.1\ProjectName.runtimeconfig.json" target="lib\netcoreapp2.1\" />
<file src="..\ProjectName\bin\Release\netcoreapp2.1\ProjectName.runtimeconfig.dev.json" target="lib\netcoreapp2.1\" />
</files>
</package>
我有一个类似的问题。 这就是我解决它的方法。
我在生成 nuget package 的项目中创建了一个 ProjectName.targets 文件。 nupkg 快照
使用此 nuget package 在项目中包含此属性
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
这些链接很有帮助从 Nuget package 复制文件到 output 目录与 Z4AE297DCcsDE376843613907 命令 indotnet pack。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.