我正在使用Eclipse开发我的第一个Java应用程序。我最近需要调整通过-Xmx256M传递给JVM分配的内存量。该应用程序目前被封装为一个可运行的jar并使用NSIS进行安装。从NSIS脚本向Java虚拟机传递参数
我有一个问题,一旦它的安装将参数传递给jar文件。这样做的常见做法是什么?以下是我正在做我的NSI文件:
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\$(^Name).lnk" "$SYSDIR\javaw.exe" "-Xmx256M -jar $INSTDIR\Foo.jar"
这将导致以下被创建为快捷方式目标的窗口:
C:\WINDOWS\system32\javaw.exe -Xmx256M -jar C:\Program Files\Foo\Foo.jar
不幸的是,这并不因工作空间在C:\ Program Files文件,如果我改变手动创建包括引号所有的链接是很好:
C:\WINDOWS\system32\javaw.exe -Xmx256M -jar "C:\Program Files\Foo\Foo.jar"
UPDATE:的罐子和-Xmx256M订购交换。但问题仍然相同。 jar文件路径中的空格导致问题。我想我需要找到一种在命令中添加引号的方法,如手动更改目标时所示,或者完全改变我的方法!
NSIS不\逃脱,它使用$ \(而且也没有必要逃避\路径中) – Anders 2010-04-02 13:57:09