diff --git a/pom.xml b/pom.xml
index f757d14b3..e9ea05aee 100644
--- a/pom.xml
+++ b/pom.xml
@@ -141,7 +141,7 @@ under the License.
org.apache.maven.shared
maven-common-artifact-filters
- 3.3.0
+ 3.3.1
org.apache.maven.shared
diff --git a/src/it/projects/dependency-sets/massembly-969/pom.xml b/src/it/projects/dependency-sets/massembly-969/pom.xml
new file mode 100644
index 000000000..03693138d
--- /dev/null
+++ b/src/it/projects/dependency-sets/massembly-969/pom.xml
@@ -0,0 +1,197 @@
+
+
+
+ 4.0.0
+
+ org.apache.maven.plugin.assembly.test
+ it-project-parent
+ 1
+
+
+ test
+ massembly-969
+ 1
+
+ UTF-8
+ 18.0.1
+
+
+
+ org.openjfx
+ javafx-base
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-base
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-base
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-base
+ ${javafx.version}
+ mac
+
+
+ org.openjfx
+ javafx-controls
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-controls
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-controls
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-controls
+ ${javafx.version}
+ mac
+
+
+ org.openjfx
+ javafx-web
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-web
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-web
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-web
+ ${javafx.version}
+ mac
+
+
+ org.openjfx
+ javafx-media
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-media
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-media
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-media
+ ${javafx.version}
+ mac
+
+
+ org.openjfx
+ javafx-swing
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-swing
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-swing
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-swing
+ ${javafx.version}
+ mac
+
+
+ org.openjfx
+ javafx-graphics
+ ${javafx.version}
+
+
+ org.openjfx
+ javafx-graphics
+ ${javafx.version}
+ win
+
+
+ org.openjfx
+ javafx-graphics
+ ${javafx.version}
+ linux
+
+
+ org.openjfx
+ javafx-graphics
+ ${javafx.version}
+ mac
+
+
+
+
+
+ maven-assembly-plugin
+ ${testVersion}
+
+
+ assembly
+ package
+
+ single
+
+
+
+ src/main/assembly/bin.xml
+
+
+
+
+
+
+
+
diff --git a/src/it/projects/dependency-sets/massembly-969/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/massembly-969/src/main/assembly/bin.xml
new file mode 100644
index 000000000..90df88a7e
--- /dev/null
+++ b/src/it/projects/dependency-sets/massembly-969/src/main/assembly/bin.xml
@@ -0,0 +1,53 @@
+
+
+ bin
+
+ dir
+
+ false
+
+
+ false
+ runtime
+
+ false
+
+ org.openjfx:javafx-base
+ org.openjfx:javafx-controls
+ org.openjfx:javafx-media
+ org.openjfx:javafx-web
+ org.openjfx:javafx-swing
+ org.openjfx:javafx-graphics:jar:linux
+
+
+ org.openjfx:javafx-base:jar:mac
+ org.openjfx:javafx-base:jar:win
+ org.openjfx:javafx-controls:jar:mac
+ org.openjfx:javafx-controls:jar:win
+ org.openjfx:javafx-media:jar:mac
+ org.openjfx:javafx-media:jar:win
+ org.openjfx:javafx-web:jar:mac
+ org.openjfx:javafx-web:jar:win
+ org.openjfx:javafx-swing:jar:mac
+ org.openjfx:javafx-swing:jar:win
+
+
+
+
\ No newline at end of file
diff --git a/src/it/projects/dependency-sets/massembly-969/verify.groovy b/src/it/projects/dependency-sets/massembly-969/verify.groovy
new file mode 100644
index 000000000..4865bc7f8
--- /dev/null
+++ b/src/it/projects/dependency-sets/massembly-969/verify.groovy
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+
+def expectedFilenames = [ "javafx-base-18.0.1.jar",
+ "javafx-controls-18.0.1-linux.jar",
+ "javafx-media-18.0.1-linux.jar",
+ "javafx-web-18.0.1.jar",
+ "javafx-base-18.0.1-linux.jar",
+ "javafx-graphics-18.0.1-linux.jar",
+ "javafx-swing-18.0.1.jar",
+ "javafx-web-18.0.1-linux.jar",
+ "javafx-controls-18.0.1.jar",
+ "javafx-media-18.0.1.jar",
+ "javafx-swing-18.0.1-linux.jar"
+]
+
+File assemblyBasedir = new File( basedir, "target/massembly-969-1-bin/" )
+
+assert assemblyBasedir.listFiles().length == expectedFilenames.size()
+
+for ( fileName in expectedFilenames )
+{
+ File file = new File( assemblyBasedir, fileName )
+ assert file.isFile() // exists and is file
+}
+
+// defined set vs listed set: same cardinality and all present: OK
+
+return true