'comando tsc no encontrado' en la compilación de mecanografiado


83

Quiero instalar mecanografiado, así que usé el siguiente comando:

npm install -g typescript 

y prueba tsc --version, pero solo muestra 'comando tsc no encontrado'. He intentado muchas formas como se sugiere en stackoverflow, github y otros sitios. pero no funciona. ¿Cómo puedo saber si mecanografiado está instalado y dónde está?

mi sistema operativo es Unix, OS X El Capitan 10.11.6, la versión del nodo es 4.4.3, la versión npm es 3.10.5


1
Incluya su sistema operativo y su versión y sus versiones de Node.js y NPM en su pregunta.
cartant

5
Lo más probable es que tenga un problema con la configuración de su nodo / npm; por ejemplo, el directorio npm relevante no está en su ruta. El lugar donde se instala mecanografiado depende de su entorno, pero puede comenzar con npm list -g. O inténtelo npm config get prefix(sus paquetes normalmente estarán en el bindirectorio debajo de este). Vea también esta pregunta .

Gracias, lo tengo. Olvidé exportar la ruta del prefijo.
Aung Thet

También puede verificar mi respuesta
Zameer Ansari

Respuestas:


115

Algunos consejos en orden

  • reiniciar el terminal
  • reiniciar la máquina
  • reinstalar nodejs + luego ejecutar npm install typescript -g

Si aún no funciona, ejecute npm config get prefixpara ver dónde está colocando npm install -g los archivos (anexe bina la salida) y asegúrese de que estén en la ruta (la configuración del nodo js hace esto. Tal vez olvidó marcar esa opción).


3
Gracias lo tengo. Claro, olvidé asignar la ruta `export PATH = / prefix'sPath / bin: $ PATH 'y ( docs.npmjs.com/getting-started/fixing-npm-permissions ) también este sitio sugiere algo así. Usé un día entero para esto :).
Aung Thet

stackoverflow.com/a/46783952/495157 : esta respuesta es más informativa, especialmente si realiza desarrollo Angular / Ionic.
JGFMK

1
Tuve que desinstalar node / npm. Utilicé brew para instalar NVM y luego instalé el nodo usando nvm install nodeluego sudo npm install -g typescriptpara comenzar tsc --versiona trabajar
alex

1
Solo hice "npm install typecript -g" y funcionó perfectamente
pixparker

La actualización de la versión de nodo me ayudó.
JavaDeveloper

29

Tuve que hacer esto:

npx tsc app.ts

2
Esto me ayudó, pero para aclarar, tenía que hacerlo npm install --save-dev typescript && npx tsc --version && npx tsc <filename>. Esto instaló tsc, lo probó con --versionéxito y compiló correctamente mi tsarchivo en un jsarchivo.
Jason Fry

Esto funcionó, pero acabo de usar npx tsc. Agregar tsc probablemente resuelve la necesidad de usar npx.
foureyedraven

8

Si su comando TSC no se encuentra en MacOS después de la instalación adecuada de TypeScript (usando el siguiente comando : $ sudo npm install -g typescript, asegúrese de que la /binruta del nodo se agregue a la PATHvariable en .bash_profile.

Abrir .bash_profileusando la terminal: $ open ~ / .bash_profile;

Edite / Verifique el perfil de bash para incluir la siguiente línea ( usando su editor de texto favorito ):

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

Cargue el último perfil de bash usando la terminal source ~/.bash_profile:;

Por último, pruebe el comando: $ tsc --version.


7

todos están jugando con las instalaciones globales y los archivos de ruta. Un pequeño error podría dañar todos los proyectos que haya escrito, y pasará el resto de la noche tratando de que un console.log ('hola') vuelva a funcionar: - =.

Si ha ejecutado npm i mecanografiado --save-dev en su proyecto, intente ejecutar:

npx tsc

y vea si funciona antes de meterse con cosas globales (a menos que sepa realmente lo que está haciendo)

salud


5

Solución fácil para Mac que encontré. Simplemente ejecute estos comandos:

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

Nada funcionó excepto esto para mí.


3

Sé que esta es una pregunta antigua, pero tuve el mismo problema en Ubuntu 19.10 LTS.

Para resolver esto, ejecuté el siguiente comando:

$ sudo apt install node-typescript

Después de eso, pude usar tsc.

Espero que ayude :)


3

Esta respuesta es específica para iTermV2 en MAC

  1. En primer lugar, necesitaba instalar como sudo(administrador) durante la instalación de NPM

    sudo npm install -g mecanografiado

  2. NPM instala las bibliotecas en la /usr/local/Cellar/node/<your latest version>/lib/node_modules/typescriptcarpeta y los enlaces simbólicos en/usr/local/Cellar/node/<your latest version>/bin/tsc

por lo tanto, fui ~ / .zshrc (.bashrc, si usa bash) y lo agregué /usr/local/Cellar/node/<your latest version>/bina $ PATH.

  1. recargar el perfil de shell a través de source ~/.zshrc(.bashrc en su caso)

Es bueno saberlo. Pero, ¿quién se ocupa de estos enlaces a partir de ahora?
Chris Pillen

3

Después de encontrar todas las soluciones para este pequeño problema solo para macOS.
Finalmente, conseguí que mi TSC funcionara en mi MacBook pro.

Esta podría ser la mejor solución que encontré.

Para todos los usuarios de macOS, en lugar de instalar mecanografiado usando npm, puede instalar mecanografiado usando homebrew.

-> brew install typescript

Consulte la captura de pantalla adjunta como referencia.

Gracias.

ingrese la descripción de la imagen aquí


2

La única solución que funcionó para mí fue poner npx tsc -v o para la compilación npx tsc salida.ts

"salida.ts" es el nombre del archivo


0

Solución no administrativa

No tengo privilegios de administrador ya que esta máquina fue emitida por mi trabajo.

  • obtener la ruta donde se instalan los módulos de nodo y copiar al portapapeles
    • npm config get prefix | clip
    • no tienes clip? simplemente copie la salida denpm config get prefix
  • agregar una ruta copiada a las variables de entorno
    • mi método preferido (Windows)
    • (Ctrl + R), pegar rundll32 sysdm.cpl,EditEnvironmentVariables
    • en Variables de usuario, haga doble clic en Ruta > Nuevo > Pegar ruta copiada

0

Ninguna de las respuestas anteriores resuelve mi problema. El hecho es que mi proyecto no tenía instalado el tipo de script. Pero localmente había corrido npm install -g typescript. Entonces no noté que la dependencia del nodo mecanografiado no estaba en mi paquete json.

Cuando lo empujé al lado del servidor y lo ejecuté npm install, npx tscobtengo un tsc no encontrado. De hecho, el servidor remoto no tenía instalado el mecanografiado. Eso estaba oculto debido a mi instalación de mecanografiado global local.


0
  1. Comprueba tu npmversión

  2. Si no está instalado correctamente, instálelo primero

  3. ejecutar este comando npm install typescript -g

  4. ahora tsc <file_name>.ts

  5. Creará un .jsarchivo correspondiente . p.ej<file_name>.js

  6. ahora intenta node <file_name>.js


-1

Para ventanas:

Agregue la ruta usando el comando como se muestra a continuación en el símbolo del sistema:
ruta =% ruta%; C: \ Users \\ npm

Como en mi caso, la ruta anterior no se registró para el comando.

% userprofile% en ejecutar Windows, le dará la ruta a C: \ users \


-1

Esto funciona perfectamente en Mac. Probado en macOS High Sierra

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

Esto genera el archivo tsconfig.json.


concurrentlyy lite-servertienen poco o nada que ver con poder ejecutar el tsccomando. No recomiende instalar dependencias innecesarias.
andras

-1

Resolví esto en mi máquina simplemente ejecutándome sudo npm installen el directorio en el que recibía el error.


No debería verse obligado a ejecutar la sudoinstalación de paquetes. Entonces deberías reinstalar npm. Ver más No sudo npm
GLindqvist
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.