Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Ikku en 30 Agosto 2014, 23:41 pm



Título: Ejecutar jre especifica desde .bat
Publicado por: Ikku en 30 Agosto 2014, 23:41 pm
Hola,

He creado un programa en java, en versión jre7, y no quiero depender de si el cliente tiene esta versión instalada, por tanto quiero incluir un jre especifico y llamar a java desde ahi.

El problema es que la aplicación es portable y el directorio donde se ejecuta el .bat es distinto por lo que tengo que hacer un acceso por ruta relativa

He intentado haciendo un

Código:
%cd%/jre7/java 

pero si la ruta contenida en el cd tiene espacios no se ejecuta bien

y con

Código:
%'cd'%/jre7/java
tampoco me va


¿Sabéis como puedo hacer esto?

Muchas gracias


Título: Re: Ejecutar jre especifica desde .bat
Publicado por: _TTFH_3500 en 31 Agosto 2014, 02:32 am
Puedes utilizar:

Código
  1. %~dp0\jre7\java

si la carpeta jre7 se encuentra en la misma ubicación del bat.


Título: Re: Ejecutar jre especifica desde .bat
Publicado por: Eleкtro en 31 Agosto 2014, 03:33 am
He intentado haciendo un
Código:
%cd%/jre7/java 

Puedes utilizar:
Código:
%~dp0\jre7\java

Todo argumento se debe encerrar con comillas dobles para prevenir error por posibles espacios en blanco como en este caso.

Ejemplos que puedes utilizar para referite a dicho directorio desde el directorio de trabajo actual:

Código:
"jre7\java"
Código:
".\jre7\java"
Código:
"%cd%\jre7\java"
Código:
"%~dp0\jre7\java"

Nota: en caso de que modifiques el directorio de trabajo del Batch-script entonces debes utilizar la última opción, que es la que dijo el compañeor @_TTFH_3500, pero añadiendole las comillas dobles, claro, de lo contrario te seguirá dando el mismo error.

Saludos!