Maven:通过命令行定义SuperPOM属性project.build.directory

时间:2017-11-23 10:56:05

标签: maven

我正在使用Docker文件在GitLab CI上构建我的maven项目。 我想用“编译”阶段和“测试”阶段配置我的管道。为了能够做到这一点,我需要将maven super POM中定义的属性error_page 405 /405.html; error_page 404 /404.html; error_page 401 400 402 403 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 /40x.html; error_page 500 501 502 503 504 505 506 507 508 509 510 511 /50x.html; 设置为docker缓存,这样编译后的工件就不会在作业之间丢失。

project.build.directory是预定义的maven属性。因此,我认为我可以使用CL参数project.build.directory来定义它。这在某种程度上不起作用,我的项目仍然构建到默认目录-Dproject.build.directory=anotherDir

如果我用

修改我的POM
target

并致电<properties> <buildDir>target</buildDir> </properties> <build> <directory>${buildDir}</directory> </build> ,我的项目按预期构建到mvn clean install -DbuildDir=customTargetDir

为什么?我真的没有看到差异。在这两种情况下,我都定义了现有属性的值。

0 个答案:

没有答案