запуск jar с вложенными библиотеками jar из командной строки cmd на as400

Пытаюсь пустить файл "banku3462.jar" (далее по тексту jar файл) в операционной системе AS400. Из IDE работает.

Команду прописал так:

QSH CMD('cd /gcp; java -jar /gcp/banku3462.jar
ru.webengine.server.reports.u3462.U3462ExportForDate                            
-M=B -D1=2022-02-01 -D2=2022-02-01 -C=A -K=Y -P=/GCP/EX/')

где CMD - начинаем работу с командной строкой. cd /gcp; - директория по умолчанию для чтения файлов настроек с сервера. U3462ExportForDate это класс, в котором содерижится main. След. строка это параметры запуска, которые передаём в main.

Ошибка:

log4j:WARN No appenders could be found for logger (ru.rb.cfg.SystemConfiguration).                     
log4j:WARN Please initialize the log4j system properly.                                                
com.ibm.db2.jdbc.app.DB2SQLTimeoutException: Processing of the SQL statement ended.  Reason code 61682.
 at com.ibm.db2.jdbc.app.DB2SQLException.createException(DB2SQLException.java:136)                     
 at com.ibm.db2.jdbc.app.DB2ConnectionRuntimeImpl.SQLConnect(Native Method)                            
 at com.ibm.db2.jdbc.app.DB2ConnectionRuntimeImpl.connect(DB2ConnectionRuntimeImpl.java:176)           
 at com.ibm.db2.jdbc.app.DB2Connection.<init>(DB2Connection.java:644)                                  
 at com.ibm.db2.jdbc.app.DB2Driver.handleURLProcessing(DB2Driver.java:1753)                            
 at com.ibm.db2.jdbc.app.DB2Driver.connect(DB2Driver.java:1285)                                        
 at java.sql.DriverManager.getConnection(DriverManager.java:675)                                       
 at java.sql.DriverManager.getConnection(DriverManager.java:258)                                       
 at lv.gcpartners.bank.ConnectionFactory.getConnection(ConnectionFactory.java:82)                      
 at ru.webengine.server.reports.u3462.U3462ExportForDate.main(U3462ExportForDate.java:381)             

Из IDE программа работает. В корне в каталоге lib лежат сторонние библиотеки:

log4j-core-2.18.0.jar log4j-api-2.18.0.jar commons-io-2.11.0.jar poi-5.2.2.jar JT400.jar production5.jar ojdbc6-11.1.0.6.0.jar cfg-core-1.0.16.jar 
commons-logging-1.1.1.jar log4j-1.2.12.jar

Они же и попадают в сборку jar. p.s. программа старая, поэтому MAVEN нет и перенести проект на MAVEN очень трудоемко.


Ответы (1 шт):

Автор решения: Григорий

Видимо приходит пустая строка, т.к. на вход функции приходит String args[]. Затем этот массив (далее по тексту "as") при попытке обратиться к первому элементу выдаёт ошибку "java.lang.StringIndexOutOfBoundsException: begin 0, end -1". В строчке String str = as[j];

так передаю параметры в IDE, там работает. Только директория другая

Через IDE как на картинке работает передача параметров.

→ Ссылка