Where can I see deno downloaded packages?

我怕爱的太早我们不能终老 提交于 2020-06-23 06:33:17

问题


I am new to deno and currently exploring for a minimum viable project in deno. I want to like npm which downloads the npm packages inside the folder node_modules, similarly I want to see the deno packages in a directory. In my current project I do not see any downloaded packages. Please suggest me where to look for deno packages. If I write dep.ts file to mention all the deno packages, can I use the same deno packages for some other projects. My question is bit similar to what Maven or Gradle in java handles. It means I want to know whether deno maintains a single folder in OS so that all the packages are downloaded and used in many projects. I want to check the directory containing the deno packages in windows 10.


回答1:


The imports are cached in $DENO_DIR

From the docs:

Deno caches remote imports in a special directory specified by the $DENO_DIR environmental variable. It defaults to the system's cache directory if $DENO_DIR is not specified. The next time you run the program, no downloads will be made. If the program hasn't changed, it won't be recompiled either. The default directory is:

  • On Linux/Redox: $XDG_CACHE_HOME/deno or $HOME/.cache/deno
  • On Windows: %LOCALAPPDATA%/deno (%LOCALAPPDATA% = FOLDERID_LocalAppData)
  • On macOS: $HOME/Library/Caches/deno If something fails, it falls back to $HOME/.deno

Relying on external servers is convenient for development but brittle in production. Production software should always bundle its dependencies. In Deno this is done by checking the $DENO_DIR into your source control system, and specifying that path as the $DENO_DIR environmental variable at runtime.


what is the deno command to install all the dependencies mentioned in dep.ts file

To install just import dep.ts in one of your files and run:

deno run index.js



回答2:


You can use deno info to get the cache directory of remote modules.

Sample output (Windows 10):
> deno info
DENO_DIR location: "C:\\Users\\ford\\AppData\\Local\\deno"
Remote modules cache: "C:\\Users\\ford\\AppData\\Local\\deno\\deps"
TypeScript compiler cache: "C:\\Users\\ford\\AppData\\Local\\deno\\gen"
To get info about a single (remote) module:
deno info --unstable https://deno.land/std/fs/mod.ts # --unstable needed as of 1.0.3
Sample output:
local: C:\Users\ford\AppData\Local\deno\deps\https\deno.land\434fe4a7...8f300799a073e0
type: TypeScript
compiled: C:\Users\ford\AppData\Local\deno\gen\https\deno.land\std\fs\mod.ts.js
map: C:\Users\ford\AppData\Local\deno\gen\https\deno.land\std\fs\mod.ts.js.map 
deps:
https://deno.land/std/fs/mod.ts
  ├─┬ https://deno.land/std/fs/empty_dir.ts
  ...

local: Local path of source file (TS or JS)
compiled: Local path of compiled source code (.js, for TS only)
map: Local path of source map (TS only)
deps: Dependency tree of source file



来源:https://stackoverflow.com/questions/61799309/where-can-i-see-deno-downloaded-packages

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!