Выполнение Причала 7 серверов в затмении?

Я пытаюсь настроить Eclipse, чтобы выполнить и развернуть мои проекты на Причале 7 серверов (самая старая версия, доступная с http://download.eclipse.org/jetty/). Я загрузил Причал 7 и распаковал его, и я установил Гагатовый плагин из доступного списка серверных адаптеров, но когда я пытаюсь настроить новый Гагатовый сервер, список типов сервера только содержит "Причал 6". Если я использую это и указываю на него на мое время выполнения сервера, когда я пытаюсь запустить его, я получаю следующую ошибку:

java.lang.NoClassDefFoundError: org/mortbay/start/Main
Caused by: java.lang.ClassNotFoundException: org.mortbay.start.Main
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Exception in thread "main" 

Я предполагаю, что мне нужен другой адаптер для запуска Причала 7, но я понятия не имею, где найти его.

14
задан user264636 10 March 2010 в 09:39
поделиться

2 ответа

Проблема в том, что имя пакета изменилось при переходе на Eclipse, а сотрудники Jetty все еще заняты.

Самый простой вариант - загрузить Jetty 6 из Codehaus ( http://dist.codehaus.org/jetty/ ), распаковать где-нибудь и использовать адаптер Jetty 6.

2
ответ дан 1 December 2019 в 06:28
поделиться

Лучше, чем использовать адаптеры WTP, я предпочитаю использовать встроенный причал. Я просто создаю обычный java-проект, назовем его «встроенный пристань». Я делаю исходный проект webapp требованием к этому проекту в разделе "Проекты" Путь сборки Java для свойств проекта. Затем я создаю класс, который запускает экземпляр причала следующим образом:

import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.webapp.WebAppContext;

public class JettyServer {
 public static void main(String[] args) {
  Server server = new Server(8080);

  WebAppContext context = new WebAppContext();
  context.setResourceBase("../webapp-project/WebContent");
  context.setDescriptor("../webapp-project/WebContent/WEB-INF/web.xml");
  context.setContextPath("/");
  context.setParentLoaderPriority(true);
  server.setHandler(context);

  try {
   server.start();
   server.join();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

В проекте встроенного причала я создаю папку «lib» и копирую все библиотеки из папки jetty / lib, затем добавляю библиотеки в библиотеки свойства проекта.

Запуск и отладка встроенного причала отлично работают для меня, перезагрузка jsp и классов работает как шарм

22
ответ дан 1 December 2019 в 06:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: