diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/resources/META-INF/web-fragment.xml b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/resources/META-INF/web-fragment.xml similarity index 100% rename from jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/resources/META-INF/web-fragment.xml rename to jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/resources/META-INF/web-fragment.xml diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java index 23f21a7125f..94102e9db95 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java @@ -291,7 +291,11 @@ public class JettyRunMojo extends AbstractJettyMojo .collect( Collectors.toList() ); webApp.getMetaData().getContainerResources().addAll( dependencyResources ); webApp.setWebInfLib (getDependencyFiles()); - +// webApp.getWebInfLib().addAll( dependencyResources // +// .stream() // +// .map( resource -> toFile(resource) ) // +// .collect( Collectors.toList() ) ); + webApp.getDependentProjects().addAll( dependencyResources ); //get copy of a list of war artifacts Set matchedWarArtifacts = new HashSet(); @@ -373,7 +377,17 @@ public class JettyRunMojo extends AbstractJettyMojo getLog().info("Webapp directory = " + webAppSourceDirectory.getCanonicalPath()); } - + private static File toFile(Resource resource) + { + try + { + return resource.getFile(); + } + catch ( IOException e ) + { + throw new RuntimeException( e.getMessage(), e ); + } + } /** diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java index a27903ceed5..3ec20ce8081 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java @@ -104,9 +104,7 @@ public class JettyWebAppContext extends WebAppContext private Resource _quickStartWebXml; private String _originAttribute; private boolean _generateOrigin; - - - + private List dependentProjects = new ArrayList<>(); /** * Set the "org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern" with a pattern for matching jars on @@ -321,6 +319,11 @@ public class JettyWebAppContext extends WebAppContext { return _webInfJars; } + + public List getDependentProjects() + { + return dependentProjects; + } /* ------------------------------------------------------------ */ public void setGenerateQuickStart (boolean quickStart) diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java index 2ea7443713e..440238d22b4 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java @@ -93,6 +93,8 @@ public class MavenWebInfConfiguration extends WebInfConfiguration public void preConfigure(WebAppContext context) throws Exception { super.preConfigure(context); + ((JettyWebAppContext)context).getDependentProjects() + .stream().forEach( resource -> context.getMetaData().addWebInfJar( resource ) ); }