Script generated using jlink --launcher doesn't espace arguments

lists at bendem.be lists at bendem.be
Thu Mar 14 14:49:10 UTC 2019


Hi,

Not quite sure where to report this, but it's a pretty annoying bug making scripts generated using the --launcher parameter unusable for applications accepting complex command line arguments.

When generating a launcher script using jlink, the generated script doesn't escape the arguments it passes through.

The command used to generate the jlink'd image from a maven output:

  jlink --output jlinked \
    -p ../target/libs/:../target/log-timing-parser-1.0.0.jar \
    --add-modules be.yelido.logtimingparser,ch.qos.logback.classic,java.naming \
    --no-header-files \
    --no-man-pages \
    --strip-debug \
    --compress=2 \
    --launcher log-timing-parser=be.yelido.logtimingparser/be.yelido.logtimingparser.Main

The generated script:

  $ cat jlinked/bin/log-timing-parser
  #!/bin/sh
  JLINK_VM_OPTIONS=
  DIR=`dirname $0`
  $DIR/java $JLINK_VM_OPTIONS -m be.yelido.logtimingparser/be.yelido.logtimingparser.Main $@

The expected script:


  $ cat jlinked/bin/log-timing-parser
  #!/bin/sh
  JLINK_VM_OPTIONS=
  DIR=`dirname $0`
  $DIR/java $JLINK_VM_OPTIONS -m be.yelido.logtimingparser/be.yelido.logtimingparser.Main "$@"


More information about the jigsaw-dev mailing list