Maven报错:maven only whitespace content allowed before start tag and not \u0 (position: START_DOCUMENT

本文描述了一个在处理包含父工程和子工程的Maven项目时遇到的奇怪问题。作者发现删除SpringCloudAlibaba父工程及其子工程打包后的pom依赖可以解决问题。问题与maven-metadata.xml文件有关,但具体原因未深究。解决方案是删除父工程及子工程的pom依赖,而非仅仅删除target目录。
摘要由CSDN通过智能技术生成

这个问题,之前从未遇到过,这是第一次遇到这样的问题,觉得挺奇怪的,尝试了各种方案之后,最终解决掉了。

首先说一下项目结构,可能与这个有关 。我这个项目是一个父工程和两个子工程,目录结构如下:

SpringCloudAlibaba是父工程名字,其余两个是SpringBoot项目的子工程,这个目录是在仓库中的目录,也就是说是打包之后的样子,我删除这三个文件夹之后,问题解决了。

按照网友的说法,是maven-metadata.xml这个文件的问题,但是这个文件是自然生成的,结构自然不会错误的,具体原因不纠结了,最终解决了这个问题。我们去对应目录看一下,也确实有这个文件:

 这个是父工程打包后产生的文件,对应的子工程产生的文件和这个一样。我们看一下这个maven-metadata-local.xml文件,首先看SpringCloudAlibaba的:

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>org.dake.springcloud</groupId>
  <artifactId>SpringCloudAlibaba</artifactId>
  <versioning>
    <versions>
      <version>1.0-SNAPSHOT</version>
    </versions>
    <lastUpdated>20220317054736</lastUpdated>
  </versioning>
</metadata>

然后是order的:

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>org.dake.springcloud</groupId>
  <artifactId>order</artifactId>
  <versioning>
    <versions>
      <version>1.0-SNAPSHOT</version>
    </versions>
    <lastUpdated>20220317054737</lastUpdated>
  </versioning>
</metadata>

stock的和order是类似的,只是artifactId不一样。这个其实就是打包产生的元数据,里面的东西和我们需要的依赖是类似的。

其他不再赘述,问题答案:

删除父工程一级子工程的产生的pom依赖。

PS,很多人说删除编译后的文件,其实就是target目录,这个是不行的,个人亲测过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北冥牧之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值