今天一个pom文件死活传不上nexus中。一直报错The provided POM file is invalid,打开这个pom文件看了下,也没发现什么明显的问题。于是打开idea,随便开了一个工程的pom,看到第一行有<?xml version="1.0" encoding="UTF-8"?>这个,然后加上后上传还是报同样的错。。然后对比了下别的官方jar包的pom,发现没有这句,不是这个的影响。
继续对比,也没有发现什么地方有问题,无奈下我把正常的pom整个copy过来,然后把groupId,artifactId和version手动改过来后上传就成功了。
有问题的pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>it.sauronsoftware</groupId> <artifactId>jave</artifactId> <version>1.0.2</version> </project>
上传成功的pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>it.sauronsoftware</groupId> <artifactId>jave</artifactId> <version>1.0.2</version> </project>
仔细对比,也就只有project这个声明换了行而已,估计是这个的影响了。