首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Linux中构建.NET核心控制台应用程序

无法在Linux中构建.NET核心控制台应用程序
EN

Stack Overflow用户
提问于 2018-11-10 12:28:05
回答 1查看 279关注 0票数 0

我有这个规范文件,它试图运行将运行dotnet程序的脚本:

代码语言:javascript
复制
require 'spec_helper'

RSpec.describe 'Integration test', type: :aruba do
  let(:command) { run "dotnet-test" }

  it "test" do
    command.write("test\n")
    stop_all_commands
    expect(command.output).to end_with("success\n")
  end
end

dotnet-test脚本:

代码语言:javascript
复制
dotnet run --project ../SomeProject/src/SomeProject.Console/SomeProject.Console.csproj -- $1

但我知道错误是:

代码语言:javascript
复制
Failure/Error: expect(command.output).to end_with("success\n")
       expected "MSBUILD : error MSB1009: Project file does not exist.\nSwitch: ../SomeProject/src/SomeProject.Console/SomeProject.Console.csproj\n\nThe build failed. Please fix the build errors and run again.\n" to end with "success\n"

但是如果我从那个目录运行脚本,那么程序就能正常运行。不知道两者之间有什么区别。我们真的很感激你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-10 12:44:50

听起来,您要运行的脚本依赖于相对路径才能正确执行。在这种情况下,您可能需要在您的规范中使用cd

请参阅https://relishapp.com/cucumber/aruba/docs/filesystem/change-current-working-directory

尝试使用文件的绝对路径,而不是

代码语言:javascript
复制
../SomeProject/src/SomeProject.Console/SomeProject.Console.csproj

你能把整条路都放进去吗,比如:

代码语言:javascript
复制
/Users/yourusername/pathtosomeproject/SomeProject/src/SomeProject.Console/SomeProject.Console.csproj

显然,您需要将pathtosomeproject替换为它的实际位置。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53238950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档