npm已安装并正在IntelliJ IDEA 15中被积极使用
我的目标是在IntelliJ中为我的TypeScript源代码生成类型,但是我想学习使用Windows命令行,因此我可以显式指定命令行选项以修补一下,以了解每个选项的作用。我对Googling所发现的与设置和使用它有关的各种花絮感到困惑...我敢肯定,我缺少一些非常基本的知识,那些博客或回答问题的人都认为这是常识。 。
这是我尝试过的和正在看到的...
步骤1:安装打字稿:
npm install -g typescript
这导致在我的系统上安装以下文件/目录结构:
C:\Users\{my user id}\AppData\Roaming\npm\node_modules\typescript
|---bin
| |--- tsc
| |--- tscserver
|---lib
| |--- lib.core.d.ts
| |--- ...
| |--- typescriptServices.js
|--- .npmignore
|--- ...
|--- ThirdPartyNoticeText.txt
步骤2:天真的尝试tsc
直接从Windows命令行运行:
我通过Googling找到的示例采用以下形式:
编译一个文件:
tsc app.ts
上面的示例来自http://www.primordialcode.com/blog/post/typescript-command-line-compiler
如图所示,该方法不起作用,原因是:
tsc
Windows上的安装目录不在Windows上,很显然,可以通过更改Window PATH环境变量和/或在输入要执行的命令时完全限定文件的路径来轻松地解决此问题或解决该问题。Path
C:\Users\{my user id}\AppData\Roaming\npm\node_modules\typescript\bin
tsc
检查tsc
文件:
#!/usr/bin/env node
require('../lib/tsc.js')
步骤3:尝试tsc
从节点命令提示符运行:
C:\>
node
>
tsc
ReferenceError: tsc is not defined
at repl:1:1
at REPLServer.defaultEval (repl.js:252:27)
at bound (domain.js:287:14)
at REPLServer.runBound [as eval] (domain.js:300:12)
at REPLServer.<anonymous> (repl.js:417:12)
at emitOne (events.js:82:20)
at REPLServer.emit (events.js:169:7)
at REPLServer.Interface._onLine (readline.js:210:10)
at REPLServer.Interface._line (readline.js:549:8)
at REPLServer.Interface._ttyWrite (readline.js:826:14)
^C
OK ...让我们指定tsc
脚本的完整路径:
C:\>
node
>
C:\Users\{my user id}\AppData\Roaming\npm\node_modules\typescript\bin\tsc
...
从字面上看,唯一的输出是...
在指定tsc
脚本的完整路径时……我猜想它需要参数……但按一下tab
键会显示似乎是节点命令(而不是tsc
命令)的列表……所以我已经不知道这是怎么回事...
现在我被卡住了
我需要安装/配置/使用什么环境来调用tsc
(如http://www.primordialcode.com/blog/post/typescript-command-line-compiler所示)?
和/或
是否有教程或网站可以帮助我从一个干净的Windows系统转变为能够从命令行使用TypeScript编译器为TypeScript源文件生成键入内容?
您不应将TypeScript的bin
文件夹直接添加到Windows中PATH
。如您所见,该文件bin
夹中的文件不能直接从命令行执行。
而是为全局安装的软件包中的每个已配置的可执行文件npm
创建一个.cmd
脚本,并将其放入:
%APPDATA%\npm
尝试更新您的PATH
文件夹以包括该文件夹,重新打开命令行,然后再次运行tsc
。
旁注:默认情况下,用于Windows的Node.js安装程序会将Node和NPM添加到Windows路径中。如果您已正常安装Node.js,则应该可以正常工作。关于如何设置节点有什么特别的地方吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句