Open CodigoRed opened 1 year ago
Hola, @CodigoRed:
Parece que en macOS hay un problema cuando le pasamos a Java un espacio a través de la aplicación. Incluso si lo proteges con comillas sigue considerándolo que lo que hay tras el espacio es otro parámetro. Lo mejor será que uses directamente el JAR de la aplicación:
Te pongo un ejemplo con las rutas completas que acabo de comprobar que funciona con AutoFirma 1.8.0 en macOS:
/Applications/AutoFirma.app/Contents/Resources/Home/bin/java -jar /Applications/AutoFirma.app/Contents/Resources/JAR/AutoFirma.jar sign -i ~/Desktop/Entrada/Entrada.xml -o ~/Documents/firma.xml -format XAdES -certgui -config "format=XAdES Enveloped"
Hay un modo de simplificar lo anterior. Te puedes crear un script que englobe la ejecución del JAR y tome los parámetros que le pases. Por ejemplo, puedes crearte un "autofirma.sh" con el siguiente contenido:
/Applications/AutoFirma.app/Contents/Resources/Home/bin/java -jar /Applications/AutoFirma.app/Contents/Resources/JAR/AutoFirma.jar "$@"
Con eso, puedes ejecutar la operación anterior con:
autofirma.sh sign -i ~/Desktop/Entrada/Entrada.xml -o ~/Documents/firma.xml -format XAdES -certgui -config 'format=XAdES Enveloped'
Ten en cuenta que cualquier parámetro que pueda tener espacios debería ir protegido con comilla simple en la llamada.
Desde la linea de comandos de Mac no funciona pero desde Windows sí. He visto que esta cuestión se ha planteado en diversas ocasiones pero no se le ha dado solución.