Tengo un atajo con 'target' "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
.
Quiero ejecutar eso desde un archivo por lotes, así que copié la "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
línea de comando cmd.exe y presioné enter. No pasó nada.
¿Cómo puedo ejecutar "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
desde una línea de comandos en Windows7?
actualizar
el archivo js contiene
var WshShell = new ActiveXObject("Wscript.Shell");
WshShell.run("java -Dlog.dir=%TEMP% -jar taf-loader.jar", 0, false);
WScript.exit;
Traté de ejecutar el archivo js con ambos Wscript.exe
y Cscript.exe
como sugirió @Serge, pero nada funcionó = el programa que inicio haciendo doble clic no ha comenzado. No hay error tampoco.
C:\>Cscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
C:\>Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
C:\>
windows-7
command-line
Radek
fuente
fuente
Respuestas:
Tienes dos opciones:
o
El primero inicia la versión de línea de comandos de Windows Scripting Host y el segundo inicia la versión de la ventana.
Las opciones de la línea de comandos están documentadas aquí: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cscript
y aquí: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/wscript
En su archivo de script, debe usar la ruta completa a su archivo jar y posiblemente la ruta completa a java.exe
Alternativamente, para permitir la
java.exe
ubicación deltar-loader.jar
archivo, debe cambiar el directorio actual al que contiene este archivo, así que antes de invocarwscript
makecd "C:\Users\Public\TestPro\TestPro Automation Framework\"
Como mencionó que le gusta ejecutar este script en un solo toque, también puede crear un acceso directo en su escritorio que tenga una línea de comando establecida
Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
y un directorio de trabajo establecido enC:\Users\Public\TestPro\TestPro Automation Framework\
fuente
java -Dlog.dir=%TEMP% -jar taf-loader.jar
directamente desde la línea de comandos o el lote? ¿Por qué este método circular? (Obviamente, java.exe tiene que estar en la RUTA.)Si puede ejecutar 'java' en una ventana de consola sin errores, entonces
1) Cree un archivo de texto en su escritorio llamado 'taf.txt'
2) Ingrese "java -Dlog.dir =% TEMP% -jar taf-loader.jar" en el archivo de texto y guárdelo
3) Cambie el nombre del archivo a 'taf.bat'
Hecho.
El uso de un host de secuencias de comandos para iniciar una secuencia de comandos que inicia un shell que inicia un programa Java es demasiado largo.
Piénselo en términos de lo que quiere lograr: desea que el programa se inicie con un clic de un icono.
El archivo por lotes es la forma más rápida de lograrlo en win7.
Si estuviera utilizando un sistema operativo que pudiera iniciar de forma nativa un script Javascript sin alterarlo, sería una buena manera de iniciarlo, pero ese script no funcionaría en otra cosa que no sea Windows (a menos que ActiveX sea portado ahora, ha sido un largo tiempo tiempo desde que lo he usado).
Fuente: Desarrollador profesional de Java por más de 10 años.
fuente
Java 1.6 viene
jrunscript
para ejecutar JavaScript fuera de los navegadores web.fuente