spring-projects / sts4

The next generation of tooling for Spring Boot, including support for Cloud Foundry manifest files, Concourse CI pipeline definitions, BOSH deployment manifests, and more... - Available for Eclipse, Visual Studio Code, and Theia

Home Page:https://spring.io/tools

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pom errors with ${javafx.platform} after STS upgrade to 4.23.1.Release

AixNPanes opened this issue · comments

Describe the bug
Error message in pom.xml
The container 'Maven Dependencies' references non existing library '/Users/tim.daley/.m2/repository/org/openjfx/javafx-base/21/javafx-base-21-${javafx.platform}.jar'

To Reproduce
view the provided pom.xml in the Maven POM Editor
Also note that "ls -1 ~/.m2/repository/org/openjfx/javafx-base/2" produces the following files:
_remote.repositories
javafx-base-21-${javafx.platform}.jar.lastUpdated
javafx-base-21-javadoc.jar
javafx-base-21-javadoc.jar.lastUpdated
javafx-base-21-javadoc.jar.sha1
javafx-base-21-mac.jar
javafx-base-21-mac.jar.lastUpdated
javafx-base-21-mac.jar.sha1
javafx-base-21-sources.jar
javafx-base-21-sources.jar.lastUpdated
javafx-base-21-sources.jar.sha1
javafx-base-21.jar
javafx-base-21.jar.lastUpdated
javafx-base-21.jar.sha1
javafx-base-21.pom
javafx-base-21.pom.lastUpdated
javafx-base-21.pom.sha1
m2e-lastUpdated.properties

Note the one with called javafx-base-21-${javafx.platform}.jar.lastUpdated which should have been javafx-base-21-mac.jar.lastUpdated both entries are in the list

Also, "mvn -X install" on maven 3.9.7 produced similar errors, but when I upgraded to maven 3.9.8 "mvn -X install" worked properly but STS still failed.

Sample


4.0.0

org.springframework.boot
spring-boot-starter-parent
3.3.0


ws-daley
pihome-thermostat
0.1.54
thermost
pihome thermostat

<properties>
	<start-class>ws.daley.pihome.ThermostatApplication</start-class>
	<spring-boot.version>3.3.0</spring-boot.version>
	<java.version>21</java.version>
	<rgielen.version>1.3.0</rgielen.version>
	<commons-io.version>2.16.1</commons-io.version>
	<jackson-mapper-asl.version>1.9.13</jackson-mapper-asl.version>
	<json-simple.version>1.1.1</json-simple.version>
	<httpclient.version>4.5.14</httpclient.version>
	<javafx.version>${java.version}</javafx.version>
	<javafx.platform>mac</javafx.platform>
	<javafx-weaver-spring.version>1.3.0</javafx-weaver-spring.version>
	<spring-boot-starter-javafx.version>2.0.0</spring-boot-starter-javafx.version>
</properties>

<dependencyManagement>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-dependencies</artifactId>
			<version>${spring-boot.version}</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>

<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-validation</artifactId>
	</dependency>
	<dependency>
		<groupId>com.github.yoep</groupId>
		<artifactId>spring-boot-starter-javafx</artifactId>
		<version>${spring-boot-starter-javafx.version}</version>
	</dependency>

	<dependency>
		<groupId>org.openjfx</groupId>
		<artifactId>javafx-base</artifactId>
		<version>${java.version}</version>
		<classifier>mac</classifier>
	</dependency>
	<dependency>
		<groupId>org.openjfx</groupId>
		<artifactId>javafx-controls</artifactId>
		<version>${java.version}</version>
		<classifier>mac</classifier>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-devtools</artifactId>
		<optional>true</optional>
	</dependency>
	<!-- 
	<dependency>
		<groupId>org.projectlombok</groupId>
		<artifactId>lombok</artifactId>
		<optional>true</optional>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-test</artifactId>
		<scope>test</scope>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-test-autoconfigure</artifactId>
	</dependency>
	-->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-configuration-processor</artifactId>
	</dependency>
	<!-- 
	<dependency>
		<groupId>org.apache.pulsar</groupId>
		<artifactId>pulsar-common</artifactId>
	</dependency>
	<dependency>
		<groupId>io.r2dbc</groupId>
		<artifactId>r2dbc-spi</artifactId>
	</dependency>
	-->
	<dependency>
		<groupId>org.apache.commons</groupId>
		<artifactId>commons-lang3</artifactId>
	</dependency>

	<dependency>
		<groupId>javax.annotation</groupId>
		<artifactId>javax.annotation-api</artifactId>
		<version>1.3.2</version>
	</dependency>
	<dependency>
		<groupId>org.apache.httpcomponents.client5</groupId>
		<artifactId>httpclient5</artifactId>
	</dependency>
	<dependency>
		<groupId>com.google.code.gson</groupId>
		<artifactId>gson</artifactId>
	</dependency>
	<dependency>
		<groupId>org.apache.xmlgraphics</groupId>
		<artifactId>batik-transcoder</artifactId>
		<version>1.14</version>
	</dependency>
	<dependency>
		<groupId>org.apache.commons</groupId>
		<artifactId>commons-collections4</artifactId>
		<version>4.5.0-M1</version>
	</dependency>
	<dependency>
		<groupId>org.apache.pdfbox</groupId>
		<artifactId>pdfbox</artifactId>
		<version>3.0.2</version>
	</dependency>
	<dependency>
		<groupId>org.apache.xmlgraphics</groupId>
		<artifactId>batik-svgrasterizer</artifactId>
		<version>1.17</version>
	</dependency>
	<dependency>
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-context</artifactId>
		<version>4.1.2</version>
	</dependency>
	<dependency>
		<groupId>org.eclipse.jdt</groupId>
		<artifactId>org.eclipse.jdt.annotation</artifactId>
		<version>2.3.0</version>
	</dependency>
</dependencies>

<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
			<configuration>
				<excludes>
					<exclude>
						<groupId>org.projectlombok</groupId>
						<artifactId>lombok</artifactId>
					</exclude>
				</excludes>
				<mainClass>ws.daley.pihome.ThermostatApplication </mainClass>
				<workingDirectory>target/classes</workingDirectory>
				<executable>java</executable>
				<jvmArguments>
					-Xms2g
					-Xmx2g
					-Djava.security.egd=file:/dev/./urandom
					--add-opens java.base/java.time=ALL-UNNAMED
					--module-path ${user.home}/AixNPanes/pihome/javafx-sdk-21.0.2/lib
					--add-modules=javafx.controls
				</jvmArguments>
				<arguments>
					dummy --add-modules=javafx.controls --list-modules
				</arguments>
			</configuration>
		</plugin>
	</plugins>
</build>
<repositories>
	<repository>
		<id>spring-milestones</id>
		<name>Spring Milestones</name>
		<url>https://repo.spring.io/milestone</url>
		<snapshots>
			<enabled>false</enabled>
		</snapshots>
	</repository>
	<repository>
		<id>spring-snapshots</id>
		<name>Spring Snapshots</name>
		<url>https://repo.spring.io/snapshot</url>
		<releases>
			<enabled>false</enabled>
		</releases>
	</repository>
	<repository>
		<id>central</id>
		<name>Maven Central</name>
		<url>https://repo1.maven.org/maven2/</url>
	</repository>
</repositories>
<pluginRepositories>
	<pluginRepository>
		<id>spring-milestones</id>
		<name>Spring Milestones</name>
		<url>https://repo.spring.io/milestone</url>
		<snapshots>
			<enabled>false</enabled>
		</snapshots>
	</pluginRepository>
	<pluginRepository>
		<id>spring-snapshots</id>
		<name>Spring Snapshots</name>
		<url>https://repo.spring.io/snapshot</url>
		<releases>
			<enabled>false</enabled>
		</releases>
	</pluginRepository>
	<pluginRepository>
		<id>central</id>
		<name>Maven Central</name>
		<url>https://repo1.maven.org/maven2/</url>
	</pluginRepository>
</pluginRepositories>

@AixNPanes what did you upgrade from? How did you upgrade? Have you tried using "vanilla" eclipse 4.32 for Java Developers?

This is probably related to the Maven integration and should be reported to https://github.com/eclipse-m2e/m2e-core. At least this is what I am guessing here.