我正在尝试为我们的项目编写集成测试POM。我们已经适当地下载和安装/解压缩项目(使用maven-dependency-plugin),但我们项目的一个警告是它还不能在其中包含空格的路径中运行。我正在寻找一种非常简单的方法来评估$ {project.build.directory}并在它包含空格时抛出一个人类可读的错误。我希望在下载依赖项之前发生这种情况,因为这需要相当长的时间。
答案 0 :(得分:2)
这将在antrun插件和<contains>
条件的帮助下完成。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<fail message="project.build.directory(${project.build.directory}) contains spaces">
<condition>
<contains string="${project.build.directory}" substring=" "/>
</condition>
</fail>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>