代码之家  ›  专栏  ›  技术社区  ›  Ryan K.

如何防止引用程序集的嵌入依赖项复制到Visual Studio中的输出文件夹?

  •  0
  • Ryan K.  · 技术社区  · 8 年前

    我有:

    1. A、 动态链接库 -第三方程序集
    2. B、 动态链接库 -我自己的类库程序集
    3. C、 exe文件 -我自己的可执行文件

    我正在使用 Costura.Fody NuGet package 镶嵌 A、 动态链接库 进入 B、 动态链接库 C、 exe文件 具有二进制引用 B、 动态链接库 .

    (嵌入在B.dll中的A.dll)<--C、 exe文件

    然而,当我构建C.exe时,A.dll会出现在输出文件夹中,尽管它已经嵌入到B.dll中(B.dll也会复制到输出文件夹)。我不希望将A.dll的两个副本与可执行文件一起分发,但我希望分发A&B作为一个整体。

    在B.dll中,A.dll的“Copy Local”属性设置为false,并显式包含在Costura的FodyWeavers中。xml。

    是否有任何方法可以配置Costura。Fody和/或“我的引用”属性,以便不将.dll单独复制到C.exe的输出文件夹中,而复制B.dll(嵌入对A.dll的引用)?

    2 回复  |  直到 8 年前
        1
  •  0
  •   Ritwik Sen    8 年前

    据我所知,需要避免使用引用程序集。

        2
  •  0
  •   Ryan K.    8 年前

    参考msbuild跟踪日志后,我发现C.exe正在解析程序文件中指向.dll的路径。从程序文件中删除.dll解决了我的问题。

    推荐文章