J'utilise jetty-server: 9.2.11 et je veux avoir un répertoire webapps pour le déploiement de la guerre dans mon application de jetée intégrée comme ce que nous avons lors de l'utilisation du serveur de jetée autonome. J'ai lu certains documents et trouvé « Comme Jetty XML » de configuration programmatique comme ci-dessouscomment faire pour jetty.home jetty.home Embedded jetty avec maven
// Path to as-built jetty-distribution directory
String jettyHomeBuild = "../../jetty-distribution/target/distribution";
// Find jetty home and base directories
String homePath = System.getProperty("jetty.home", jettyHomeBuild);
File homeDir = new File(homePath);
if (!homeDir.exists())
{
throw new FileNotFoundException(homeDir.getAbsolutePath());
}
String basePath = System.getProperty("jetty.base", homeDir + "/demo-base");
File baseDir = new File(basePath);
if(!baseDir.exists())
{
throw new FileNotFoundException(baseDir.getAbsolutePath());
}
// Configure jetty.home and jetty.base system properties
String jetty_home = homeDir.getAbsolutePath();
String jetty_base = baseDir.getAbsolutePath();
System.setProperty("jetty.home", jetty_home);
System.setProperty("jetty.base", jetty_base);
// === jetty-deploy.xml ===
DeploymentManager deployer = new DeploymentManager();
deployer.setContexts(contexts);
deployer.setContextAttribute(
"org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern",
".*/servlet-api-[^/]*\\.jar$");
WebAppProvider webapp_provider = new WebAppProvider();
webapp_provider.setMonitoredDirName(jetty_base + "/webapps");
webapp_provider.setDefaultsDescriptor(jetty_home + "/etc/webdefault.xml");
webapp_provider.setScanInterval(1);
webapp_provider.setExtractWars(true);
webapp_provider.setConfigurationManager(new PropertiesConfigurationManager());
deployer.addAppProvider(webapp_provider);
server.addBean(deployer);
Mais ici utilise « jetée distribution », mais je ne les fichiers jar liés à la jetée dans mon répertoire lib qui seront copiés en tant que dépendances de Maven. Je suis coincé ici pour faire ma configuration pour avoir "jetty.home" pour mon application de jetée embarquée parce que je n'utilise pas de distribution jetée standard. Je n'ai que des jars séparés.
merci pour la réponse et maintenant je comprends que j'utilise DeploymentManager et WebAppContext maintenant et pour mon but avec un emplacement pour déployer mes fichiers de guerre. – user3014595