diff --git a/jetty-ee8/jetty-ee8-bom/pom.xml b/jetty-ee8/jetty-ee8-bom/pom.xml
index 731fcbcf730..1a04794533f 100644
--- a/jetty-ee8/jetty-ee8-bom/pom.xml
+++ b/jetty-ee8/jetty-ee8-bom/pom.xml
@@ -118,11 +118,11 @@
-
-
-
-
-
+
+ org.eclipse.jetty.ee8
+ jetty-ee8-quickstart
+ ${project.version}
+
org.eclipse.jetty.ee8
jetty-ee8-nested
diff --git a/jetty-ee8/jetty-ee8-home/pom.xml b/jetty-ee8/jetty-ee8-home/pom.xml
index a6cb468edc5..37f74bd49da 100644
--- a/jetty-ee8/jetty-ee8-home/pom.xml
+++ b/jetty-ee8/jetty-ee8-home/pom.xml
@@ -370,11 +370,10 @@
asm-analysis
-
-
-
-
-
+
+ org.eclipse.jetty.ee8
+ jetty-ee8-quickstart
+
org.eclipse.jetty.ee8
jetty-ee8-servlet
diff --git a/jetty-ee8/jetty-ee8-plus/pom.xml b/jetty-ee8/jetty-ee8-plus/pom.xml
index 7fcf7d9f6e4..daa74c8bc49 100644
--- a/jetty-ee8/jetty-ee8-plus/pom.xml
+++ b/jetty-ee8/jetty-ee8-plus/pom.xml
@@ -14,8 +14,6 @@
jetty-ee9-plus
${project.groupId}.plus
org.eclipse.jetty.plus.*
-
- true
diff --git a/jetty-ee8/jetty-ee8-quickstart/pom.xml b/jetty-ee8/jetty-ee8-quickstart/pom.xml
new file mode 100644
index 00000000000..8f0b54ac5a9
--- /dev/null
+++ b/jetty-ee8/jetty-ee8-quickstart/pom.xml
@@ -0,0 +1,67 @@
+
+
+ org.eclipse.jetty.ee8
+ jetty-ee8
+ 12.0.0-SNAPSHOT
+
+
+ 4.0.0
+ jetty-ee8-quickstart
+ EE8 :: Jetty :: Quick Start
+ Jetty Quick Start
+
+
+ jetty-ee9-quickstart
+ ${project.groupId}.quickstart
+
+
+
+
+
+ org.apache.felix
+ maven-bundle-plugin
+ true
+
+
+
+ osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)"
+
+
+ osgi.serviceloader; osgi.serviceloader=org.eclipse.jetty.ee8.webapp.Configuration
+
+
+
+
+
+
+
+
+
+ org.eclipse.jetty.ee8
+ jetty-ee8-webapp
+
+
+ org.eclipse.jetty.ee8
+ jetty-ee8-plus
+
+
+ org.eclipse.jetty.ee8
+ jetty-ee8-annotations
+
+
+ org.slf4j
+ slf4j-api
+
+
+ org.eclipse.jetty
+ jetty-slf4j-impl
+ test
+
+
+ org.eclipse.jetty.toolchain
+ jetty-test-helper
+ test
+
+
+
+
diff --git a/jetty-ee8/jetty-ee8-quickstart/src/main/config/etc/jetty-ee8-quickstart.xml b/jetty-ee8/jetty-ee8-quickstart/src/main/config/etc/jetty-ee8-quickstart.xml
new file mode 100644
index 00000000000..1dd6e943f55
--- /dev/null
+++ b/jetty-ee8/jetty-ee8-quickstart/src/main/config/etc/jetty-ee8-quickstart.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+ [
+
+
+
+
+
+ ]
+
+
diff --git a/jetty-ee8/jetty-ee8-quickstart/src/main/config/modules/ee8-quickstart.mod b/jetty-ee8/jetty-ee8-quickstart/src/main/config/modules/ee8-quickstart.mod
new file mode 100644
index 00000000000..e999a138e89
--- /dev/null
+++ b/jetty-ee8/jetty-ee8-quickstart/src/main/config/modules/ee8-quickstart.mod
@@ -0,0 +1,24 @@
+# DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html
+
+[description]
+Enables the Jetty Quickstart module for rapid deployment of preconfigured web applications.
+
+[environment]
+ee8
+
+[depend]
+server
+ee8-deploy
+
+[lib]
+lib/jetty-ee8-quickstart-${jetty.version}.jar
+
+[xml]
+etc/jetty-ee8-quickstart.xml
+
+[ini-template]
+
+# Modes are AUTO, GENERATE, QUICKSTART
+# jetty.quickstart.mode=AUTO
+# jetty.quickstart.origin=origin
+# jetty.quickstart.xml=
diff --git a/jetty-ee8/pom.xml b/jetty-ee8/pom.xml
index c53a0848cb4..ca8d955742b 100644
--- a/jetty-ee8/pom.xml
+++ b/jetty-ee8/pom.xml
@@ -22,6 +22,7 @@
true
true
+ 1.0.0-SNAPSHOT
@@ -35,6 +36,7 @@
jetty-ee8-jndi
jetty-ee8-annotations
jetty-ee8-websocket
+ jetty-ee8-quickstart
jetty-ee8-bom
jetty-ee8-demos
jetty-ee8-home
@@ -48,7 +50,7 @@
org.eclipse.jetty.toolchain
jetty-modify-sources-maven-plugin
- 1.0.0-SNAPSHOT
+ ${modify-sources-plugin.version}
@@ -56,6 +58,38 @@
org.apache.maven.plugins
maven-resources-plugin
+
+
+ p12
+ raw
+ jar
+ war
+ jks
+ tga
+ zip
+ gz
+ tif
+ tiff
+ svgz
+ jp2
+ rar
+ bz2
+ br
+ xcf
+
+
+
+
+ org.apache.maven.shared
+ maven-filtering
+ 3.3.0
+
+
+ org.eclipse.jetty.toolchain
+ jetty-modify-sources-maven-plugin
+ ${modify-sources-plugin.version}
+
+
copy-ee8-resources
@@ -72,6 +106,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
copy-ee8-test-resources
generate-test-resources
@@ -79,9 +133,13 @@
copy-resources
+
+ ee9-to-ee8
+
${project.build.testOutputDirectory}
+ true
${maven.multiModuleProjectDirectory}/jetty-ee9/${ee9.module}/src/test/resources
diff --git a/jetty-ee9/jetty-ee9-quickstart/src/test/java/org/eclipse/jetty/ee9/quickstart/TestQuickStart.java b/jetty-ee9/jetty-ee9-quickstart/src/test/java/org/eclipse/jetty/ee9/quickstart/TestQuickStart.java
index f2dde07d2ac..08153758a5e 100644
--- a/jetty-ee9/jetty-ee9-quickstart/src/test/java/org/eclipse/jetty/ee9/quickstart/TestQuickStart.java
+++ b/jetty-ee9/jetty-ee9-quickstart/src/test/java/org/eclipse/jetty/ee9/quickstart/TestQuickStart.java
@@ -124,7 +124,7 @@ public class TestQuickStart
quickstart.addConfiguration(new QuickStartConfiguration());
quickstart.setAttribute(QuickStartConfiguration.MODE, QuickStartConfiguration.Mode.GENERATE);
quickstart.setAttribute(QuickStartConfiguration.ORIGIN_ATTRIBUTE, "origin");
- quickstart.setDescriptor(MavenTestingUtils.getTestResourceFile("web.xml").getAbsolutePath());
+ quickstart.setDescriptor(MavenTestingUtils.getTargetFile("test-classes/web.xml").getAbsolutePath());
quickstart.setContextPath("/foo");
server.setHandler(quickstart);
server.setDryRun(true);
@@ -167,7 +167,7 @@ public class TestQuickStart
quickstart.addConfiguration(new QuickStartConfiguration());
quickstart.setAttribute(QuickStartConfiguration.MODE, QuickStartConfiguration.Mode.GENERATE);
quickstart.setAttribute(QuickStartConfiguration.ORIGIN_ATTRIBUTE, "origin");
- quickstart.setDescriptor(MavenTestingUtils.getTestResourceFile("web.xml").getAbsolutePath());
+ quickstart.setDescriptor(MavenTestingUtils.getTargetFile("test-classes/web.xml").getAbsolutePath());
quickstart.setContextPath("/foo");
server.setHandler(quickstart);
server.setDryRun(true);
@@ -237,10 +237,10 @@ public class TestQuickStart
quickstart.addConfiguration(new QuickStartConfiguration());
quickstart.setWar(testDir.toURI().toURL().toExternalForm());
quickstart.setAttribute(QuickStartConfiguration.MODE, QuickStartConfiguration.Mode.GENERATE);
- quickstart.setDescriptor(MavenTestingUtils.getTestResourceFile("web.xml").getAbsolutePath());
+ quickstart.setDescriptor(MavenTestingUtils.getTargetFile("test-classes/web.xml").getAbsolutePath());
//apply the context xml file
- XmlConfiguration xmlConfig = new XmlConfiguration(Resource.newResource(MavenTestingUtils.getTestResourceFile("context.xml").toPath()));
+ XmlConfiguration xmlConfig = new XmlConfiguration(Resource.newResource(MavenTestingUtils.getTargetFile("test-classes/context.xml").toPath()));
xmlConfig.configure(quickstart);
//generate the quickstart
@@ -258,7 +258,7 @@ public class TestQuickStart
quickstart.getServerClassMatcher().exclude("org.eclipse.jetty.ee9.quickstart.");
quickstart.addConfiguration(new QuickStartConfiguration());
quickstart.setWar(testDir.toURI().toURL().toExternalForm());
- quickstart.setDescriptor(MavenTestingUtils.getTestResourceFile("web.xml").getAbsolutePath());
+ quickstart.setDescriptor(MavenTestingUtils.getTargetFile("test-classes/web.xml").getAbsolutePath());
quickstart.setAttribute(QuickStartConfiguration.MODE, QuickStartConfiguration.Mode.AUTO);
server.setHandler(quickstart);