Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Spaces in the path cause bin/jruby script to build an invalid command string #8441

@gerbils

Description

@gerbils
  • JRuby version: 9.4.1.0
  • bin/jruby -v
  • OS X

Freshly download jruby into a directory with a space in the name

$ pwd
/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0
$ bin/jruby -v
Error: could not open `/Users/dave/Test'

I adding tracing to the add_log function, and added set -x to the line before the exec in the jruby script. The output is below/ The exec shows that path names containing spaces are not being quoted.

Cheers

@pragdave

=================
JRuby Environment
=================


=================
JRuby Environment
=================
JRuby executable:

=================
JRuby Environment
=================
bin/jruby

=================
JRuby Environment
=================
JRuby command line options:

=================
JRuby Environment
=================
-v

=================
JRuby Environment
=================
Current directory:

=================
JRuby Environment
=================
/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0

=================
JRuby Environment
=================


=================
JRuby Environment
=================
Environment:

=================
JRuby Environment
=================
JRUBY_HOME: /Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0

=================
JRuby Environment
=================
JRUBY_OPTS:

=================
JRuby Environment
=================
JAVA_OPTS:

=================
JRuby Environment
=================
JAVACMD: /Users/dave/.asdf/installs/java/zulu-11.54.25/zulu-11.jdk/Contents/Home/bin/java

=================
JRuby Environment
=================
JAVA_HOME: /Users/dave/.asdf/installs/java/zulu-11.54.25/zulu-11.jdk/Contents/Home

=================
JRuby Environment
=================


=================
JRuby Environment
=================
Detected Java modules at /Users/dave/.asdf/installs/java/zulu-11.54.25/zulu-11.jdk/Contents/Home

=================
JRuby Environment
=================


=================
JRuby Environment
=================
Adding Java options from: /Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.java_opts

=================
JRuby Environment
=================


=================
JRuby Environment
=================
Adding Java options from: /Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.module_opts

=================
JRuby Environment
=================
--add-opens java.base/java.io=org.jruby.dist

=================
JRuby Environment
=================
--add-opens java.base/java.nio.channels=org.jruby.dist

=================
JRuby Environment
=================
--add-opens java.base/sun.nio.ch=org.jruby.dist

=================
JRuby Environment
=================
--add-opens java.management/sun.management=org.jruby.dist

=================
JRuby Environment
=================


=================
JRuby Environment
=================
Java command line:

=================
JRuby Environment
=================
/Users/dave/.asdf/installs/java/zulu-11.54.25/zulu-11.jdk/Contents/Home/bin/java @/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.java_opts @/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.module_opts -Xss2048k -Djffi.boot.library.path=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib/jni -Djava.security.egd=file:/dev/urandom --module-path /Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib/jruby.jar -classpath : -Djruby.home=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0 -Djruby.lib=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main -v

+ true
+ exec /Users/dave/.asdf/installs/java/zulu-11.54.25/zulu-11.jdk/Contents/Home/bin/java @/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.java_opts @/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/bin/.jruby.module_opts -Xss2048k '-Djffi.boot.library.path=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib/jni' -Djava.security.egd=file:/dev/urandom --module-path '/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib/jruby.jar' -classpath : '-Djruby.home=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0' '-Djruby.lib=/Users/dave/Test Dir/dtcode/Common/ThirdPartyTools/jruby-9.4.9.0/lib' -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main -v
Error: could not open `/Users/dave/Test'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions