tsc命令找不到'在编译typescript时

我想安装typescript,所以我使用了下面的命令:

npm install -g typescript

和测试tsc --version,但它只是显示'tsc命令未找到'。我尝试了stackoverflow, github和其他网站中建议的许多方法。但这并不奏效。我怎么知道typescript被安装和它在哪里。

我的操作系统是Unix, OS X El Capitan 10.11.6, 节点版本为4.4.3, NPM版本是3.10.5

332575 次浏览

以下是一些建议

  • 重启终端
  • 重新启动机器
  • 重新安装nodejs +,然后运行npm install typescript -g

如果它仍然不起作用,运行npm config get prefix来查看npm install -g将文件放在哪里(将bin追加到输出中),并确保它们在路径中(node js设置会这样做。也许你忘了勾选这个选项)。

windows:

在命令提示符中用如下命令添加路径:
= % %路径;路径C: \ \ \用户npm < / p >

在我的例子中,上面的路径没有为命令注册。

在运行的windows中,%userprofile%会给你路径C:\users\

我发现Mac很容易修复。只需运行这些命令:

sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript

对我来说,除了这个,什么都没用。

这在Mac上工作得很好。在macOS High Sierra上测试过

sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript
tsc --init

这将生成tsconfig。json文件。

如果在正确安装TypeScript(使用以下命令:$ sudo npm install -g typescript)后,MacOS中没有找到TSC命令,则确保节点/bin路径被添加到.bash_profile中的PATH变量中。

使用terminal打开.bash_profile: $ Open ~/.bash_profile;

编辑/验证bash配置文件以包括以下行(使用您最喜欢的文本编辑器):

export PATH="$PATH:"/usr/local/lib/node_modules/node/bin"";

使用terminal: source ~/.bash_profile加载最新的bash配置文件;

最后,尝试命令:$ tsc --version

我必须这样做:

npx tsc app.ts

你们都弄乱了全局安装和-path文件。一个小小的错误可能会破坏你曾经写过的每一个项目,你会花一晚上的时间试图让console.log('hi')再次工作。

如果你在你的项目中运行了npm i typescript --save-dev -试着运行:

npx tsc

在搞砸全局之前看看它是否有效(除非你真的知道你在做什么)

我在我的机器上通过在我得到错误的目录中运行sudo npm install来解决这个问题。

我在Ubuntu 19.10 LTS上遇到了同样的问题。

为了解决这个问题,我运行了以下命令:

$ sudo apt install node-typescript

在那之后,我能够使用tsc

这个答案是特定于MAC上的iTermV2的

  1. 首先,我需要在NPM安装期间以sudo (admin)的身份安装

    Sudo NPM install -g typescript

  2. NPM将库安装在/usr/local/Cellar/node/<your latest version>/lib/node_modules/typescript文件夹下,符号链接安装在/usr/local/Cellar/node/<your latest version>/bin/tsc文件夹下

因此我去~/。zshrc (.bashrc,如果你使用bash),并将/usr/local/Cellar/node/<your latest version>/bin添加到$PATH。

  1. 通过source ~/.zshrc重新加载shell配置文件。Bashrc)

非管理解决方案

我没有管理权限,因为这台机器是由我的工作颁发的。

  • 获取安装节点模块的路径而且拷贝到剪贴板
    • npm config get prefix | clip
    • 没有夹子?只是从npm config get prefix复制输出
    • 李< / ul > < / > 将复制的路径添加到环境变量中
      • 我的首选方法(Windows)
      • (Ctrl + R),粘贴rundll32 sysdm.cpl,EditEnvironmentVariables
      • 在用户变量下,双击路径 > >粘贴复制的路径
      • 李< / ul > < / >
对我来说唯一有效的解决方案是put TSC -v 或者编译 NPX TSC salida.ts

”——赛利达。Ts”是文件的名称

在找到这个小问题的所有解决方案后,仅适用于macOS。
最后,我在我的MacBook pro上得到了我的TSC工作

这可能是我找到的最好的解决办法。

对于所有macOS用户,你可以使用homebrew安装TypeScript,而不是使用NPM安装TypeScript。

brew install typescript

请参考附件截图。 enter image description here < / p >

以上没有一个能解决我的问题。 事实是,我的项目没有安装类型脚本。 但是我在本地运行了npm install -g typescript。所以我没有注意到typescript节点依赖不在我的包json.

当我把它推到服务器端,并运行npm install时,然后npx tsc我得到一个tsc未找到。事实上,远程服务器没有安装typescript。这是隐藏的,因为我的本地全局typescript安装。

  1. 检查你的npm版本

  2. 如果没有正确安装,请先安装

  3. 运行此命令npm install typescript -g

  4. < p >现在tsc <file_name>.ts

  5. 它将创建一个相应的.js文件。如<file_name>.js

  6. 现在尝试node <file_name>.js

在Windows 10上,我通过将%APPDATA%\npm添加到路径来解决它

我已经尝试了很多在Heroku上部署Node.js typescript项目,我尝试了不同的解决方案,但没有一个适合我。所以,我已经实现了一个解决方案,即在本地创建一个经销文件夹,并且只推送dist文件夹与package。. json文件,你不需要将你的src文件夹推到Heroku。并在脚本中添加&;start": "node dist/index.js"

这是我的项目结构:
Here are my project structure:

. < p >。Gitignore文件:
。Gitignore文件:

.

包中。json文件:

"start": "node dist/index.js",
"deploy": "tsc && git add . && git commit -m Heroku && git push heroku master",
"dev": "ts-node-dev --respawn --pretty --transpile-only src/index.ts"

只需要添加这些脚本:
just need add these scripts:

.

以上这些对我都没用。

我也试过这个,

yum install typescript

能够千方百计地编译如下。不推荐,只是一个变通办法。

只要使用npm在本地安装,作为npm install typescript,并在node_module文件夹中验证,如果它下载了。然后跑,

./node_modules/typescript/bin/tsc  --help
./node_modules/typescript/bin/tsc  //this line actually runs and compile and generate the compiled file.

对于windows和yarn用户,请尝试yarn tsc --init

全局安装TypeScript包对我来说很有效。

npm install typescript -g

对于mac用户,你不需要重启你的笔记本电脑或执行任何其他命令

使用brew install typescript

我在这方面遇到了麻烦,因为我不想全局安装typescript。我发现我必须向包中添加一个脚本。Json为我调用TSC。解决方案可以在这里找到- https://stackoverflow.com/a/41446584/6301243

使用:

npm rebuild typescript

这将在你的机器上重新构建tsc链接。

在package.json

  "scripts": {
"tsc": "./node_modules/typescript/bin/tsc",
"postinstall": "npm run tsc"
},

为我为Heroku部署工作。 安装typescript npm install -D typescript并在构建脚本"build": "tsc",中写入tsc对我来说不工作

首先通过npm install typescript命令安装typescript 或npm install -g typescript[用于全局安装typescript],则运行npx tsc --version检查typescript版本,而不是tsc --version 运行任何typescript文件也是一样的,只需要运行npx tsc <filename>.ts 例如,对于一个名为hello的文件。

. ts,执行npx tsc hello.ts

如果您正在使用Linux,不要忘记使用sudo。

sudo npm install -g typescript