【问题标题】:Maven plugin - how can I resolve properties for Maven Project created from pom file?Maven 插件 - 如何解析从 pom 文件创建的 Maven 项目的属性?
【发布时间】:2012-01-01 09:17:11
【问题描述】:

我有一个从 pom 文件创建的 Maven 项目,如以下链接所述: Get MavenProject from just the POM.xml - pom parser? 我有一个未解决的依赖项,我需要从中获取值。我得到的值包含未解析的属性(例如:<version>${version}</version>)。 project.getProperties 不返回 ${project.build.directory}${version} 之类的属性 如何获取此项目的所有属性的列表?

例如我有这个依赖,我无法解决它,因为${version} 没有解决:

<dependency>
    <groupId>com.comp.sp</groupId>
    <artifactId>art</artifactId>    
    <version>${version}</version>
    <type>zip</type>
</dependency>

【问题讨论】:

  • 你想解决什么问题?
  • 问题已通过示例进行了更改。见上文。
  • 嗯..好的。你正在使用一个属性作为版本标记,它不适用于 Maven ......所以问题是:你为什么不把版本放到 pom 中,事情就完成了?或者在 pom 本身中定义一个属性部分?
  • @khm 版本中的变量很好,人们总是这样做——当然,有办法搞砸它。
  • @bmargulies 我知道......但我想找出在这种情况下使用它们并阅读 pom 的原因......

标签: maven properties dependencies dependency-properties maven-plugin


【解决方案1】:

查看Aether library,其中包含可以完全解决您的问题的示例。 (看看here)..官方Aehter is in the meantime move to Eclipse

【讨论】:

  • 谢谢,但我目前无法使用外部库。
  • 在构建 maven 插件时不能使用外部库? Aether 是 maven 的一部分!
  • @bmargulies 我知道...我只是忽略了游戏中有 maven 插件..
【解决方案2】:

看看jcabi-aether util(我是一名开发人员),它是 Apache Aether 的包装器。

【讨论】:

    猜你喜欢
    • 2011-05-09
    • 1970-01-01
    • 2022-11-24
    • 1970-01-01
    • 2012-08-18
    • 1970-01-01
    • 2020-04-18
    • 2011-10-31
    • 1970-01-01
    相关资源
    最近更新 更多