diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 21e84fb9d..4cc8f3306 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -389,6 +389,7 @@ Valentino Miazzo Victor Toni Vimil Saju Vincent Legoll +Vitold S Volker Leidl Waldek Herka Wang Weijun diff --git a/WHATSNEW b/WHATSNEW index 8f8d635e7..4cc9c83a9 100644 --- a/WHATSNEW +++ b/WHATSNEW @@ -45,6 +45,10 @@ Fixed bugs: archives that are different at the byte level each time an archive was built. + * runant.py should now work as well when the path of the Java executable + contains spaces. + github pull request #1 + Other changes: -------------- diff --git a/contributors.xml b/contributors.xml index 4e6e88dad..f8d6105a9 100644 --- a/contributors.xml +++ b/contributors.xml @@ -1564,6 +1564,10 @@ Vimil Saju + + Vitold + S + Volker Leidl diff --git a/src/script/runant.py b/src/script/runant.py index 7111766a8..a0b27645d 100644 --- a/src/script/runant.py +++ b/src/script/runant.py @@ -51,7 +51,10 @@ if not os.environ.has_key('JAVACMD'): if not os.path.exists(os.environ['JAVA_HOME']): print "Warning: JAVA_HOME is not defined correctly." else: - JAVACMD = os.path.join(os.environ['JAVA_HOME'], 'bin', 'java') + JAVA_HOME = os.environ['JAVA_HOME'] + while JAVA_HOME[0] == JAVA_HOME[-1] == "\"": + JAVA_HOME = JAVA_HOME[1:-1] + JAVACMD = os.path.join(JAVA_HOME, 'bin', 'java') else: print "Warning: JAVA_HOME not set." else: @@ -85,8 +88,11 @@ CLASSPATH = "" if os.environ.has_key('CLASSPATH'): CLASSPATH = "-lib " + os.environ['CLASSPATH'] +while JAVACMD[0] == JAVACMD[-1] == "\"": + JAVACMD = JAVACMD[1:-1] + # Builds the commandline -cmdline = ('%s %s -classpath %s -Dant.home=%s %s ' + \ +cmdline = ('"%s" %s -classpath %s -Dant.home=%s %s ' + \ 'org.apache.tools.ant.launch.Launcher %s %s %s') \ % (JAVACMD, ANT_OPTS, LOCALCLASSPATH, ANT_HOME, OPTS, ANT_ARGS, \ CLASSPATH, string.join(sys.argv[1:], ' '))