Dan*_*ral 3 f# visual-studio-2013
我有一个名为 BasicFunctions.fs 的文件,它被 Program.fs 使用。BasicFunctions.fs 在项目中肯定在 Program.fs 之上,所以顺序是正确的。但我不断收到此错误:
错误 1 库或多文件应用程序中的文件必须以命名空间或模块声明开头,例如“命名空间 SomeNamespace.SubNamespace”或“module SomeNamespace.SomeModule”。只有应用程序的最后一个源文件可以省略这样的声明。
我正在使用 VS 2013 和 F# 3.1。这是示例代码,没什么特别的:
基本功能.fs
module BasicFunctions
let runAll =
let result = 4
result
Run Code Online (Sandbox Code Playgroud)
程序文件
[<EntryPoint>]
let main argv =
printfn "%A" argv
BasicFunctions.runAll
0 // return an integer exit code
Run Code Online (Sandbox Code Playgroud)
这是解决方案的屏幕截图:
我发现了问题。当您复制和粘贴 .fs 文件而不是从头开始创建新文件时,似乎存在问题。使用谷歌找到此链接:https : //github.com/Microsoft/visualfsharp/issues/104
为了解决这个问题,我刚刚删除了两个文件 BasicFunctions.fs 和 BasicFunctions2.fs,并使用VS 中的“New Item..”菜单项创建了它们,同时确保它们在主文件 Program.fs 之前。
如果您不想麻烦重新创建文件,最好实际修改 .fsproj 文件以确保 Program.fs 是最后一个文件。幸得rmunn在评论部分。
现在已经搭建成功,感谢大家的帮助。
| 归档时间: |
|
| 查看次数: |
822 次 |
| 最近记录: |