我有一个 Maven 项目,可以在命令行上正常构建。我想在 Eclipse Luna 4.4.1 中编辑项目文件,但是当我加载项目时,它在我的 pom.xml 文件中报告以下错误:
cvc-datatype-valid.1.2.1:“${MYVAR}”不是“布尔值”的有效值
cvc-type.3.1.3:元素“enabled”的“${MYVAR}”值无效。
这个问题看起来类似于当 boolean 是属性时验证 Maven pom.xml https://stackoverflow.com/questions/24412567/validating-maven-pom-xml-when-boolean-is-a-property,目前还没有任何答案。虽然我可以在命令行上通过 Maven 进行编译,但 Eclipse 不断将这些报告为错误,这很烦人。有没有办法在不禁用 pom.xml 文件其余部分的验证的情况下消除这些错误?
根据http://maven.apache.org/pom.html#Properties http://maven.apache.org/pom.html#Properties我参考的是MYVAR
属性正确。
以下是我的pom.xml文件的相关内容:
<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>
<artifactId>myproject</artifactId>
<groupId>org.mydomain</groupId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<properties>
<spring-version>3.0.2.RELEASE</spring-version>
<MYVAR>false</MYVAR>
</properties>
<repositories>
<repository>
<id>internal_repo</id>
<name>my internal repository for offline use</name>
<url>file://${INT_REPO_HOME}/java/maven_repo</url>
<layout>default</layout>
</repository>
<repository>
<id>central</id>
<url>http://repo1.maven.org/maven2</url>
<releases>
<enabled>${MYVAR}</enabled>
</releases>
<snapshots>
<enabled>${MYVAR}</enabled>
</snapshots>
</repository>
</repositories>
</project>
Eclipse 正在验证 POM 的 XSD,该 XSD 表明此 XML 元素的类型为布尔值。
布尔值的有效值为 true/false,因此当它看到 ${MYVAR} 时,会引发验证错误...因为 Eclipse 插件不会将变量从“${MYVAR}”转换为“false”。
然而,如果你执行 mvn install ,它就可以正常工作,这意味着 pom 是正确的。
结论,这是一个Elipse插件的问题,所以你只能忽略它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)