From 358c8d979e92884a0aabce13afc745f2666c9ad4 Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Fri, 18 Mar 2022 19:00:50 +0000 Subject: [PATCH] Ignore project's version property when resolving properties in a bom Closes gh-315 --- .../internal/properties/ProjectPropertySource.java | 5 ++++- .../properties/ProjectPropertySourceSpec.groovy | 11 ++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySource.java b/src/main/java/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySource.java index 33dc0be..fde3004 100644 --- a/src/main/java/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySource.java +++ b/src/main/java/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySource.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2017 the original author or authors. + * Copyright 2014-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,9 @@ public ProjectPropertySource(Project project) { @Override public String getProperty(String name) { + if ("version".equals(name)) { + return null; + } if (this.project.hasProperty(name)) { Object property = this.project.property(name); if (property != null) { diff --git a/src/test/groovy/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySourceSpec.groovy b/src/test/groovy/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySourceSpec.groovy index 9cd35e3..babafeb 100644 --- a/src/test/groovy/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySourceSpec.groovy +++ b/src/test/groovy/io/spring/gradle/dependencymanagement/internal/properties/ProjectPropertySourceSpec.groovy @@ -1,5 +1,5 @@ /* - * Copyright 2014-2018 the original author or authors. + * Copyright 2014-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,4 +66,13 @@ public class ProjectPropertySourceSpec extends Specification { property == null } + def 'Null is returned when project has null property'() { + given: 'A project' + project.version = '1.2.3' + when: 'The version property is retrieved' + def property = this.propertySource.getProperty("version") + then: 'The property is null' + property == null + } + }