Я пытаюсь запустить следующую команду, используя пакет exec дочернего процесса JS узла:
java -Duser.dir=/app/system/controllers/ -jar -Xmx2048m -XX:-UseGCOverheadLimit "/app/system/controllers/validation/dist/Validation.jar" "load" "ATC" "/app/system/controllers/validation/test files/uploadedfile1.xlsx" "/app/system/controllers/validation/test files/uploadedfile2.xlsx"
Вот как я ее называю:
var exec = require('child_process').execSync;
var child = exec('java -Duser.dir=/app/system/controllers/ -jar -Xmx2048m -XX:-UseGCOverheadLimit "/app/system/controllers/validation/dist/Validation.jar" "load" "ATC" "/app/system/controllers/validation/test files/uploadedfile1.xlsx" "/app/system/controllers/validation/test files/uploadedfile2.xlsx"', function (error, stdout, stderr){
if(error){
console.log("The error is: ",error);
}
});
По некоторым причинам,когда я называю это так, выдается следующая ошибка:
Error: Command failed: java -Duser.dir=/app/system/controllers/ -jar -Xmx2048m -XX:-UseGCOverheadLimit "/app/system/controllers/validation/dist/Validation.jar" "load" "ATC" "/app/system/controllers/validation/test files/uploadedfile1.xlsx" "/app/system/controllers/validation/test files/uploadedfile2.xlsx"
Exception in thread "main" org.apache.poi.openxml4j.exceptions.NotOfficeXmlFileException: No valid entries or contents found, this is not a valid OOXML (Office Open XML) file
at org.apache.poi.openxml4j.opc.ZipPackage.getPartsImpl(ZipPackage.java:290)
at org.apache.poi.openxml4j.opc.OPCPackage.getParts(OPCPackage.java:774)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:344)
at org.apache.poi.util.PackageHelper.open(PackageHelper.java:37)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:285)
Но когда я запускаю его через командную строку, буквально просто копируя и вставляя его, он работает совершенно нормально.Будет ли простое объяснение, почему это происходит?Я что-то неправильно называю в вызове дочернего процесса?