wewnątrz pliku bat Mam następujący:Jak zatrzymać mylne argumenty programu Java z argumentami maszyny wirtualnej?
java -Ddatabase.host=127.0.0.1 -Xms128M -Xmx1024M com.temp.util.manual.serial.Assignment -folder C:\temp\ -destination C:\temp\out.csv
W -folder
i -destination
params mają być przekazywane do głównej metody klasy Przypisanie miano, lecz są one interpretowane jako VM args .
Próbowałem umieszczać cytaty wokół params bezskutecznie, a wyszukiwanie nie ujawnia odpowiedzi.
pojawia się następujący błąd:
Unrecognized option: -'destination'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Press any key to continue . . .
@echo off
setlocal EnableDelayedExpansion EnableExtensions
set FILETYPE=%~n0
set CLASSPATH=jar1.jar
set CLASSPATH=%CLASSPATH%;anotherjar.jar
echo %CLASSPATH%
java -DjobName=%FILETYPE% -Ddatabase.host=127.0.0.1 -Ddatabase.name=db1 -Ddatabase.username=user1 -Ddatabase.password=password1 -Xms128M -Xmx1024M com.temp.util.manual.serial.Assignment -folder C:\\temp\\ -destination C:\\temp\\out.csv
call Cleanup.bat
endlocal
Zauważam, że nie określasz ścieżki klasy. Czy twoje argumenty są w dokładnie takiej kolejności? –
Ustaliłem ścieżkę klasy przed podaną linią. Tak, argumenty są w tej kolejności. –
Pokaż nam swój plik wsadowy. Ukrywasz coś ... – icza