当前位置:  开发笔记 > 编程语言 > 正文

通过project.json将内容文件复制到DNX Console应用程序的输出目录

如何解决《通过project.json将内容文件复制到DNXConsole应用程序的输出目录》经验,为你挑选了2个好方法。

我刚刚开始在VS2015中使用DNX 1.0.0-rc1-update1.我的第一个应用程序是"控制台应用程序(包)"项目.一切正常,除了NLog日志记录.我怀疑是因为NLog.config没有被复制到输出文件夹.如何通过project.json告诉VS将此文件复制到输出文件夹?

我已经尝试添加这样的'资源'变量,但它不起作用:

project.json

...
"resource":"NLog.config",
...

编辑1: 我正在使用dnx451,因此兼容性不是问题.

编辑2: 我将以下内容添加到project.json中

"scripts": {
    "postbuild": [
      "%project:Directory%/../scripts/copy_resources.bat \\\"%project:Directory%\\\" \\\"%project:Directory%/../artifacts/bin/%project:Name%/%project:Version%/dnx451\\\""
    ] 
  }

copy_resources.bat

echo "Running script" >> C:\logs\log.txt
echo %1 >> C:\logs\log.txt
echo %2 >> C:\logs\log.txt

xcopy %1\NLog.config %2 /U /Y

VS的输出窗口中没有任何内容表明脚本实际上已运行.此外,log.txt为空.

如何调试构建过程?



1> Christian Sp..:

与此同时,.NET Core RTM发布了.

现在,目前的办法得到的东西复制到输出文件夹使用buildOptions部分在project.json.

copyToOutput您可以使用这样的选项:

之前:

{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint": true
  },

  // more stuff
}

后:

{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint": true,
    "copyToOutput": { "includeFiles": [ "NLog.config" ] }
  },

  // more stuff
}



2> Bjorn Reppen..:

copyToOutput在里面使用buildOptions:

{
  "buildOptions": {
    "copyToOutput":  "NLog.config" 
  }
}

或者对于多个文件声明一个数组:

{
  "buildOptions": {
    "copyToOutput":  ["NLog.config", "testdata\\"]
  }
}

要复制目录,请记住添加尾随\\.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有