当前位置: 首页 > 知识库问答 >
问题:

deploy:deploy-file未从pom文件中找到工件、组等

司寇阳朔
2023-03-14
mvn deploy:deploy-file -DpomFile=webapp-6.0.2.pom -Dfile=webapp-6.0.2.jar -DrepositoryId=internal -Durl=dav:http://server:9091/archiva/repository/internal -Dpackaging=jar -DgeneratePom=false
[INFO] Building Maven Default Project
[INFO]    task-segment: [deploy:deploy-file] (aggregator-style)
[INFO] ------------------------------------------------------------------------
[INFO] [deploy:deploy-file]
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Missing group, artifact, version, or packaging information

是文档写错了还是我漏了什么?

共有1个答案

金昂熙
2023-03-14

tl;dr:部署文件mojo不从父项目继承版本号,因此它必须直接在pom中,或者指定为-dversion=...参数。

根据您如何看待它,这要么是一个bug,要么是文档中的一个缺失。deploy插件的源代码包括:

Parent parent = model.getParent();

if ( this.groupId == null )
{
    if ( parent != null && parent.getGroupId() != null )
    {
        this.groupId = parent.getGroupId();
    }
    if ( model.getGroupId() != null )
    {
        this.groupId = model.getGroupId();
    }
}
if ( this.artifactId == null && model.getArtifactId() != null )
{
    this.artifactId = model.getArtifactId();
}
if ( this.version == null && model.getVersion() != null )
{
    this.version = model.getVersion();
}
if ( this.packaging == null && model.getPackaging() != null )
{
    this.packaging = model.getPackaging();
}

这意味着插件只尝试从父级继承groupid,而不是版本号。在我的特定案例中,我的pom缺少version,我希望它从父级继承,就像其他大多数maven一样。

 类似资料:
  • 文件组织指示如何在文件中组织记录。 文件有不同类型的组织,以提高其访问记录的效率。 以下是文件组织方案的类型 - 顺序文件组织 索引顺序文件组织 相对文件组织 本模块中的语法及其各自的术语仅涉及它们在程序中的用法。 使用这些语法的完整程序将在“文件处理动词”一章中讨论。 顺序文件组织 顺序文件由按顺序存储和访问的记录组成。 以下是顺序文件组织的关键属性 - 可以按顺序读取记录。 要读取第10条记录

  • 我一直在尝试运行以下命令 获取以下错误 github。com/x/customValidation/validators。proto:找不到文件。test\u服务器/测试。proto:5:1:Import“github.com/x/customValidation/validators.proto”未找到或有错误。 我可以看到原始文件在这个位置- 我还尝试了使用--proto\u path命令,但

  • 我有一个多模块的maven项目。它有两个多模块 父POM. xml(包装类型:pom) Module1 POM. xml(包装类型:jar) Module2 POM. xml(包装类型:jar) 当我使用mvn构建选项构建pom.xml时,我能够获得所有工件(父pom,子jars)。 但我想要。pom文件(不是pom.xml)也用于子JAR。谁能建议我怎么做? 我尝试在pom中添加依赖项,比如ma

  • 所以我的程序终于在它的第一个版本中完成了。我可以在EclipseIDE中毫无问题地运行它,但一旦我将它打包到一个Jar文件中,它就找不到项目中某个文件夹中的文件(声明为源文件夹)。我已经知道,在编译过程中,文件夹结构会发生变化,我尝试过解决这个问题,但它不起作用,我不想坚持这样的解决方法 项目结构: 在我的程序中,我正在访问“配置”中的文件 它工作得非常好,因为文件夹存在于项目中。但编译后就没有了

  • 我试图理解从根pom文件到中级pom文件的继承指令。说明书上写着: 定义父pom文件继承和groupid、artifactid(但不是版本),从中间级父级到根pom文件。

  • 我在中遇到一个问题。它显示以下错误。我试图通过添加所需的依赖项来更新maven,但无法解决这个问题。 资源路径位置类型缺少工件组织。springframework。安全性:Spring Securityweb:jar:4.2.2。构建快照pom。xml/Spring Security示例xml不安全第171行Maven依赖问题