我正在使用 exec-maven-plugin 从 java 8 运行 javapackager 以捆绑 javafx 应用程序,并且系统属性需要在值中包含一个空格。
当我使用时,<argument>-BjvmProperties=log_path="%LOCALAPPDATA%/ERMS/Desktop Alerts/"
我得到:Error: Unknown argument: Alerts /
我在空格前添加了一个正斜杠,这使得 javapackager 运行,但是当应用程序运行时,参数似乎没有正确传递。在生成的 app/ERMS Desktop Alerts.cfg 文件中,它显示为-Dlog_path=%LOCALAPPDATA%/ERMS/Desktop" Alerts/
如果我从命令行调用 java,我可以使用java -Dlog_path="%LOCALAPPDATA%/ERMS/Desktop Alerts" -jar DesktopAlerts.jar
并且效果很好。
我添加的任何(奇数)个斜杠根本没有改变结果。
编辑
从 javapackager 本身从 cmd 运行,我发现-BjvmProperties=log_path="${env:LOCALAPPDATA}/ERMS/Desktop Alerts/"
了作品。现在是让 exec-maven-plugin 产生该论点的问题。