【问题标题】:Why shouldn't I put spaces in my Maven path in Windows?为什么我不应该在 Windows 的 Maven 路径中放置空格?
【发布时间】:2013-09-14 11:26:00
【问题描述】:

Maven Windows prerequisites 中声明,

您需要解压 Maven 发行版。不要在源代码中间解压它;选择一个位置(路径中没有空格!)并在那里解压。

为什么路径中是否有空格很重要?

【问题讨论】:

  • 因为这仍然是一个问题。不起作用。你会收到类似this 的错误
  • @ppeterka66 究竟是什么意思?我认为这是一个问题,否则他们不会建议反对它。我想知道问题出在哪里。
  • maven 的这一部分有 bug 将路径中的空格视为有第二个参数。只需将单词放在一起并将每个新单词的第一个字母大写即可。我在 C 的根目录中创建了一个名为“ProgramFiles”的新文件夹,用于此类程序。
  • 大多数此类程序将允许您使用“PROGRA~1”或其他类似名称来代替“Program Files”,因为 Windows 将允许对文件和文件夹使用短名称。在 Windows 下使用dir /X 显示短名称。

标签: windows maven path


【解决方案1】:

问题是在 Maven 的某个地方,它正在执行一个子进程,并且它没有正确地将其文件名参数用双引号括起来。所以一个文件在

"C:\Program Files\Foobar"

在命令行上看起来像 2 个文件

"C:\Program"
"Files\Foobar"

这些都不正确。这是“旧”时代的遗留物,当时文件名中不允许使用空格(即 1980 年代),命令行上的参数由空格分隔。很遗憾,这个问题仍然存在。 Linux 机器上的情况稍差一些,因为迁移到允许文件名中包含空格的速度较慢,因此如果文件名中有空格,Linux 上有更多的脚本和程序会失败。

【讨论】:

猜你喜欢
  • 2020-09-15
  • 1970-01-01
  • 2012-10-02
  • 1970-01-01
  • 2018-02-23
  • 2011-03-01
  • 1970-01-01
  • 2020-09-26
  • 1970-01-01
相关资源
最近更新 更多