无法通过npm全局卸载typescript

问题描述 投票:0回答:6

我已经在我的系统上全局安装了 typescript 2.4.1(tsc -v 为我提供了版本 2.4.1)。我想卸载它,因为我想转到版本 2.3.4 以使我的一些 e2e 测试能够工作。但现在我无法卸载它。我尝试通过 npm 卸载

npm uninstall -g tsc

但是当我运行

时运行命令后
tsc -v 

它再次向我展示了

version  2.4.1.

我搜索了这个问题并找到了一些解决方案

在没有节点的情况下卸载打字稿npm 安装旧版本的(typescript 编译器)包 但我已经尝试了所有方法,即尝试在已安装的程序中查找是否存在,但找不到它。 然后进入

C:\Program Files (x86)\Microsoft SDKs\TypeScript

手动删除该文件夹,但命令提示符中显示的是版本 2.3,而不是 2.4.1。

任何帮助我如何摆脱打字稿2.4.1。 ?

node.js npm-install tsc
6个回答
17
投票

请输入:

npm uninstall -g typescript

而不是

npm uninstall -g tsc

这应该可以解决你的问题! :)


8
投票

对于Windows

由于 Microsoft SDK,您的计算机上可能安装了旧的 TypeScript:

cmd>tsc --version
Version 1.0.3.0

如果你检查

PATH
环境变量,你可能会发现这样的条目:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\

就我而言,卸载“TypeScript Tools for Microsoft Visual Studio 2015”并没有从该路径中删除

tsc.exe
等,可能是因为它是作为 Windows 10 SDK 或其他内容的一部分安装的。

您可以从

PATH
环境变量中删除该条目,或者至少将其移至 Node.js(可能是
C:\Program Files\nodejs
)或 nvm(如
C:\Users\<username>\AppData\Roaming\nvm
)条目下方(如果您使用 Node Version Manager)。这将阻止对
tsc
的调用运行古老的 TypeScript 编译器:

cmd>tsc --version
Version 3.1.3

更改环境变量后不要忘记重新启动命令行以使它们生效!

如果您不确定

tsc
命令实际运行的二进制文件,请使用
where
命令来查找:

cmd>where tsc
C:\Program Files\nodejs\tsc
C:\Program Files\nodejs\tsc.cmd
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\tsc.exe
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\tsc.js

优先级是从上到下。我的例子中的第一个条目是 (Linux) shell 脚本,通常无法在 Windows 上执行。第二个条目是 Windows 批处理脚本,这是将要执行的脚本。它基本上调用 Node.js(简化):

node.exe node_modules\typescript\bin\tsc

您现在可以从程序和功能中的控制面板卸载“TypeScript Tools for Microsoft Visual Studio 2015”。在我的例子中,它是随 Visual Studio 2015 自动安装的。


对于 Ubuntu Linux

卸载节点打字稿 要从 Ubuntu 16.04 (Xenial Xerus) 仅卸载节点打字稿,请在终端中运行:

sudo apt-get remove node-typescript

卸载node-typescript及依赖包 卸载 Ubuntu Xenial 不再需要的 node-typescript 包和任何其他依赖包。

sudo apt-get remove --auto-remove node-typescript

删除节点打字稿 如果您还想清除 Ubuntu Xenial 中的节点打字稿设置和/或数据,请使用以下命令:

sudo apt-get purge node-typescript

要清除节点打字稿设置和/或数据文件及其 Ubuntu Xenial 依赖包,请运行:

sudo apt-get purge --auto-remove node-typescript

有关 apt-get remove 的更多信息

高级软件包工具(APT)是一个免费的软件用户界面,它与核心库配合使用来处理 Debian、Ubuntu 和其他 Linux 发行版上的软件安装和删除。 APT 通过从预编译文件或编译源代码自动检索、配置和安装软件包,简化了在类 Unix 计算机系统上管理软件的过程。

apt-get 是用于处理包的命令行工具,并且可以被视为使用 APT 库的其他工具的后端用户。

apt-get remove 与 install 相同,只是删除而不是安装软件包。请注意,删除包会将其配置文件保留在系统上。如果软件包名称后附加一个加号(中间没有空格),则将安装识别的软件包而不是删除。


0
投票

对于 Linux:

如果 npm uninstall 不起作用 - 使用 sudo 尝试此命令。这就是我的出路

sudo npm uninstall -g typescript

sudo npm uninstall -g tsc

0
投票

在 Linux Fedora 36 上我必须这样做:

sudo dnf remove nodejs-typescript

命令输出:

Dependencies resolved.ejs-typescript
=============================================================================
 Package              Architecture   Version           Repository  Size
=============================================================================
Removing:
 nodejs-typescript    noarch         4.1.3-4.fc36      @fedora     53 M

Transaction Summary
=============================================================================
Remove  1 Package


然后获取我所做的最新版本:

sudo npm install -g typescript

0
投票

你可能失踪了

sudo

执行如下操作:

npm uninstall -g typescript

0
投票

在我的 Mac 上,我只需运行

sudo rm -rf /usr/local/bin/tsc
,然后安装我想要的版本:
npm install -g [email protected]
,并且在无法使用 npm uninstall 后它就可以工作了。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.