2016-03-16 2 views
-1

Там эта BASH файл:BASH в сЕРИЙНОГО Java

#!/bin/bash 
set -eu 
DIR=`dirname $0` 
JAR=$DIR/myjar.jar 
CLASSPATH=$JAR:./ 
HEAP_SIZE=-size 
java $HEAP_SIZE -cp $CLASSPATH something.something2 "[email protected]" 

То, что я хочу, чтобы превратиться в BAT-файл для запуска на окнах Это то, что я до сих пор:

@ECHO OFF 
set DIR = %cd% 
set JAR = DIR/myjar.jar 
set CLASSPATH = %JAR%:./ 
set HEAP_SIZE = -size 
java %HEAP_SIZE% -cp %CLASSPATH% something.something2 

Как я бы заполнил его так же, как файл bash?

ответ

4

%CD% может работать, но ваш скрипт bash, похоже, устанавливает каталог, основанный на пути к сценарию (т. Е. Аргумент $0), а не текущий каталог. Чтобы использовать тот же каталог, что и командный файл, вы используете %~dp0.

Вы пропустили % вокруг своей переменной DIR, если хотите увеличить значение.

В ваших set заявлениях не должно быть пробелов вокруг одинаковых знаков.

Эквивалент [email protected] в партии составляет %*.

Вы должны указать ваш %CLASSPATH%. В Windows вы гораздо чаще сталкиваетесь с путями с пробелами в них.

@ECHO OFF 
set "DIR=%~dp0" 
set "JAR=%DIR%/myjar.jar" 
set "CLASSPATH=%JAR%:./" 
set "HEAP_SIZE=-size" 
java %HEAP_SIZE% -cp "%CLASSPATH%" something.something2 %* 
Смежные вопросы