【问题标题】:How to "pathconvert" under Maven?如何在 Maven 下“路径转换”?
【发布时间】:2010-06-16 19:41:52
【问题描述】:

我遇到了与Ant produces jsfl with backslashes instead of slashes 类似的问题,只是我在 Maven 下运行。

我想生成相对于 Maven 的内置属性 ${basedir} 的跨平台路径。问题是在 Windows 下,${basedir} 解析为包含 Windows 样式斜杠的路径。有没有一种简单的方法可以让我将 ${basedir} 转换为即使在 Windows 下也始终使用 Unix 样式斜杠的表单?

【问题讨论】:

  • 你的用例到底是什么?
  • 我想将依赖于 ${basedir} 的路径传递给“java.library.path”,但 ${basedir} 在 Windows 下包含错误的斜杠类型。
  • 我实际上遇到了一个问题,我需要将 ${basedir}/passwordfile 传递给 maven-embedded-glassfish-plugin 命令,而下面的解决方案没有帮助。
  • @ArchimedesTrajano 我建议发布一个单独的问题并链接到对您不起作用的答案(解释实际发生的情况)。
  • 是的,我确实找到了解决方案。

标签: windows maven-2 filepath


【解决方案1】:

回答我自己的问题:

使用 ${file.separator} 而不是斜线,并注意错误 MEXEC-81,该错误已在 2010 年由 git commit 6e8be6881fe50714a00509f8f106e21d50d606a6 (svn: 12372) 修复,这是 quotes and backslashes 被误解的地方。

【讨论】:

    【解决方案2】:

    在将目录添加到库路径的情况下,您最好使用自己的 pom 创建一个新工件,将其安装在本地 repo 中并将其作为依赖项添加到项目中。

    Maven and Native Libraries: JDIC and java.library.path UPDATED 详细介绍了如何将本机依赖项添加到库路径中。

    Using native dependencies inside Maven 是另一种方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-07
      • 2019-08-26
      • 1970-01-01
      • 2019-08-18
      • 2019-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多