在WildFly 8中设置包含standalone.conf.bat空格的JAVA_OPTS的正确方法?

时间:2017-05-15 16:15:06

标签: batch-file cmd jboss escaping wildfly

在Wildfly8中的standalone.conf.bat中设置JAVA_OPTS时,我遇到了消耗空间的问题。回到JBOSS 7,如果我想设置一个包含空格的属性,那么我可以执行以下操作:

# New config to cover old and new domain # Works for new, but not for the old domain server { server_name registry-old.domain.com registry-new.domain.com; location / { proxy_pass http://localhost:5000; proxy_set_header Host registry-new.domain.com; # Also tried $host proxy_set_header X-Real-IP $remote_addr; } } # Original working registry #server { # server_name registry-old.domain.com; # # location / { # proxy_pass http://oldRegistry:5000; # proxy_set_header Host $host; # proxy_set_header X-Real-IP $remote_addr; # } #}

根据我的理解,Windows会首先使用外部引号,然后将内部引号视为单个字符串。在Wildfly8中虽然我收到以下错误:

set "JAVA_OPTS=%JAVA_OPTS% -DDEV_HOME="C:\dev\TEST FOLDER""

如果不包含空格,则会正确解释相同的属性。尽管有引号,但似乎空间被解释为分隔符。我不确定设置包含空格的属性的正确方法是什么。我已尝试使用C:\dev\j2ee\wildfly-8.2.0.Final\bin>standalone.bat Calling "C:\dev\j2ee\wildfly-8.2.0.Final\bin\standalone.conf.bat" FOLDER" | findstr /r /c:"-Djboss.server.base.dir" > nul && ( FOLDER" | findstr /r /c:"-Djboss.server.config.dir" > nul && ( FOLDER" | findstr /r /c:"-Djboss.server.log.dir" > nul && ( else was unexpected at this time.` \进行转义并使用^全部达到类似效果。

1 个答案:

答案 0 :(得分:1)

您可以使用“8.3格式”中的旧文件名约定而不是真实文件名。所以“C:\ Program Files”在我的系统上转换为“C:\ PROGRAM~1”。这样就没有空间问题了。 “dir / x”命令将以旧方式显示文件名。