我第一次使用deno,而The system cannot find the path specified. (os error 3)
是我遇到的错误。我的代码如下:-
import { Application } from 'https://deno.land/x/oak/mod.ts'
const app = new Application();
const port = 3000;
app.use((ctx) => {
ctx.response.body = "Hello World"
})
app.listen({ port })
console.log(`localhost:${port}`)
我正在Powershell上使用deno run --allow-net .\server.js
来启动deno。任何帮助将不胜感激。
编辑:如果我尝试做一个简单的console.log并使用deno run server.js
运行该文件,它将运行正常,这意味着正确设置了deno环境。一旦在顶部添加了import语句,就会开始发生错误。
答案 0 :(得分:1)
问题可能是您有oak
的旧版本的deno
的缓存版本。
做:
deno cache --reload server.js
然后再次运行服务器:
deno run --allow-net server.js
使用非版本化的URL被认为是一种不好的做法,但是在这种情况下,由于尚未发布面额1.0.3
的新版本,您别无选择,只能使用master
。
更新:该错误可能由PR #6000
修复。答案 1 :(得分:0)
我遇到了同样的错误。经过一些尝试,我发现使用import时在nodejs和deno之间存在差异。在节点中,我们使用
import { Server } from './Server';
但是在deno中,我们使用
import { Server } from './Server/index.js
它解决了我的问题,希望对您来说一样
答案 2 :(得分:0)
我也遇到了同样的错误。我执行了以下步骤来解决此错误:
如果已打开Visual Studio,请先将其关闭。
打开命令( cmd )提示符以管理员身份运行
运行此命令scoop install deno
现在打开Visual Studio代码并使用以下命令运行程序:
deno run --allow-net --allow-read --allow-write ./server.js
或
deno run --allow-net --allow-read --allow-write .\server.js